Files
histsdk/docs/reverse-engineering/aahclient-exports-latest.json
T
dohertj2 c95824a65d Initial commit: managed .NET 10 AVEVA Historian SDK + reverse-engineering toolkit
Full read-only SDK (src/AVEVA.Historian.Client) implementing the CLAUDE.md required
surface against AVEVA Historian's binary WCF protocol — no native AVEVA runtime
dependency. All operations live-verified against a local Historian:

- ProbeAsync, ReadRawAsync, ReadAggregateAsync, ReadAtTimeAsync, ReadEventsAsync
- BrowseTagNamesAsync, GetTagMetadataAsync (17 native data-type codes mapped)
- GetConnectionStatusAsync, GetStoreForwardStatusAsync, GetSystemParameterAsync
- 108/108 unit + integration tests pass

Includes the reverse-engineering toolkit (tools/AVEVA.Historian.ReverseEngineering)
used to decode the protocol: WCF probes, IL inspection via dnlib, and IL-rewrite
instrumentation (instrument-wcf-{write,read}message etc.) plus the .NET Framework
trace harness (tools/AVEVA.Historian.NativeTraceHarness) for parity testing.

Sanitized handoff evidence under docs/reverse-engineering/. Native AVEVA binaries
(current/, aveva-install-x64/, aveva-install-x86/) are gitignored — fetch separately
from the AVEVA installer.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 06:31:48 -04:00

106 lines
3.6 KiB
JSON

{
"Path": "C:\\Users\\dohertj2\\Desktop\\histsdk\\current\\aahClient.dll",
"Sha256": "77a778988e2d8f2d0e88113f8c8b0788a0ef34fa5134938a353976778144dc83",
"Exports": [
"?mdas_AddHistorianValue2@@YAHKPEAUHISTORIAN_VALUE2@@PEAUHISTORIAN_ERROR@@@Z",
"?mdas_AddNonStreamedValue2@@YAHKKPEAUHISTORIAN_VALUE2@@PEAUHISTORIAN_ERROR@@@Z",
"?mdas_GetNextEventDataQueryResult@@YAHKKPEAVEventQueryResultRow@@PEAUHISTORIAN_ERROR@@@Z",
"?mdas_GetRuntimeParameter@@YAHKAEBV?$vector@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@V?$allocator@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@std@@AEAV?$vector@VCRetVariant@@V?$allocator@VCRetVariant@@@std@@@2@PEAUHISTORIAN_ERROR@@@Z",
"?mdas_StartEventDataRetrievalQuery@@YAHK_K0IIGGAEAVEventQueryFilters@@PEB_WPEAKPEAUHISTORIAN_ERROR@@@Z",
"mdas_AddHistorianTag",
"mdas_AddHistorianTags",
"mdas_AddHistorianValue",
"mdas_AddNonStreamValues",
"mdas_AddNonStreamValuesBegin",
"mdas_AddNonStreamValuesEnd",
"mdas_AddNonStreamedValue",
"mdas_AddNonStreamedValue3",
"mdas_AddNonStreamedValueAsync",
"mdas_AddNonStreamedValuesBegin",
"mdas_AddNonStreamedValuesEnd",
"mdas_AddRevisionValue",
"mdas_AddRevisionValuesBegin",
"mdas_AddRevisionValuesEnd",
"mdas_AddStreamValue",
"mdas_AddStreamValue2",
"mdas_AddTagExtendedProperties",
"mdas_AddTagExtendedPropertyGroups",
"mdas_AddTags",
"mdas_AddTags2",
"mdas_CanUpdateAreaHierarchy",
"mdas_CloseConnection",
"mdas_ConfigureAutoStartProcess",
"mdas_ConfigureParameter",
"mdas_DeleteTag",
"mdas_DeleteTagExtendedPropertiesByName",
"mdas_EndQuery",
"mdas_ExchangeInfoWithProcess",
"mdas_GetErrorCount",
"mdas_GetErrorText",
"mdas_GetHistorianTagsByKey",
"mdas_GetJobStatus",
"mdas_GetLicenseFeatureInfo",
"mdas_GetLikeTagnames",
"mdas_GetLocalizedText",
"mdas_GetNextBlockQueryResult",
"mdas_GetNextDataQueryResult",
"mdas_GetSFParameter",
"mdas_GetStorageStatus",
"mdas_GetSystemParameter",
"mdas_GetSystemTimeZoneName",
"mdas_GetTagDeploymentStatus",
"mdas_GetTagExtendedPropertyByName",
"mdas_GetTagExtendedPropertyGroupStatusByName",
"mdas_GetTagInfoByName",
"mdas_GetTagInfoFromName",
"mdas_GetTagInfosByName",
"mdas_GetTagStatusByName",
"mdas_GetTagTypeFromName",
"mdas_GetTagidsByTagnameAndSource",
"mdas_GetTimeZoneInfo",
"mdas_GetTimeZoneNames",
"mdas_Initialize",
"mdas_IsAllForwarded",
"mdas_IsDBCaseSensitive",
"mdas_IsManualTag",
"mdas_IsOriginalAllowed",
"mdas_IsTagnameValid",
"mdas_IsTagsSynchronized",
"mdas_LogError",
"mdas_OpenConnection",
"mdas_OpenConnection2",
"mdas_OpenConnectionOffline",
"mdas_OpenConnectionOffline2",
"mdas_OpenConnectionOffline4",
"mdas_PingPipe",
"mdas_PingServer",
"mdas_ReleaseBuffer",
"mdas_ReleaseErrorDetail",
"mdas_RenameSourceTags",
"mdas_RenameTags",
"mdas_SendNonStreamedValues",
"mdas_SetBufferMemory",
"mdas_SetConnectState",
"mdas_SetConnectionParameter",
"mdas_SetParameter",
"mdas_SetRedundantSFMode",
"mdas_SetSFParameter",
"mdas_SetServerConnectionInfo",
"mdas_SetServerConnectionInfo2",
"mdas_SetServerConnectionInfo4",
"mdas_SetStoreForwardMode",
"mdas_SetTraceAccount",
"mdas_SetTraceFlags",
"mdas_StartBlockRetrievalQuery",
"mdas_StartDataRetrievalQuery",
"mdas_StartLikeTagNameSearch",
"mdas_StartProcess",
"mdas_StopProcess",
"mdas_UnInitialize",
"mdas_UnregisterTag",
"mdas_UpdateAreaHierarchy",
"mdas_UpdateConnection",
"mdas_UpdateObjectHierarchy"
]
}