Externe Applikationen
AIDA64 ermöglicht die Bereitstellung der Sensorwerte für andere, externe Anwendungen: über Shared Memory, die Registry, WMI (Windows Management Instrumentation) und den Rivatuner OSD Server.
Aktiviere Shared Memory
Der übliche Weg, Informationen unter Windows-Anwendungen auszutauschen läuft über Shared Memory. Das AIDA64 Hardware-Überwachungsmodul verwendet den Shared-Memory-Bereich “AIDA64_SensorValues”.
Der Inhalt des Shared Memory ist ein String-Wert (long), der mit einem 0x00 Charakter endet und damit ein üblicher PChar oder char* ist.
Der String ist unter Verwendung von XML Tags aufgebaut, aber es ist kein komplettes XML-Dokument. Der String enthält alle Temperatur, Kühllüfter und Spannungswerte, die AIDA64 messen kann. Temperaturen sind immer in °C angegeben, auch wenn Fahrenheit in den Einstellungen als Einheit ausgewählt wurde. Die Wertbeschreibungen sind immer auf Englisch und nicht an die ausgewählte Sprache angepasst.
Die Buffergröße (das ist die Größe des Shared Memory Blocks) muss mindestens 10 KB betragen. Die typische Buffergröße liegt zwischen 1-3 KB, aber für Abit MicroGuru 2005 basierte Motherboards kann die Buffergröße wesentlich größer sein.
Um den Inhalt des Shared Memory auszulesen, kann ein Code ähnlich der dieser Delphi-Prozedur verwendet werden:
Const
sharedmem_name = 'AIDA64_SensorValues';
Function ExtApp_SharedMem_ReadBuffer(bu:PChar;bu_size:DWord):Boolean;
Var
mappedData : PChar;
th : THandle;
Begin
Result:=False;
th:=OpenFileMapping(FILE_MAP_READ,False,sharedmem_name);
If th<>INVALID_HANDLE_VALUE Then
Begin
mappedData:=MapViewOfFile(th,FILE_MAP_READ,0,0,0);
If mappedData<>Nil Then
Begin
StrLCopy(bu,mappedData,bu_size);
If UnmapViewOfFile(mappedData) Then Result:=True;
End;
CloseHandle(th);
End;
End;
So sieht ein Beispiel für ein Shared Memory Output aus:
Aktiviere das Schreiben von Sensor Werten in die Registry
Wenn diese Option ausgewählt ist, werden die Sensorwerte in den folgenden Windows Registry Pfad geschrieben:
HKEY_CURRENT_USER\Software\FinalWire\AIDA64\SensorValues
Wenn AIDA64 geschlossen wird, werden sowohl der Registry-Pfad als auch die Werte gelöscht. Temperaturen sind immer in °C angegeben und Sensor Labels sind immer auf Englisch.
Hier ein Beispiel, wie die Sensorwerte in der Registry angelegt werden:
Aktiviere das Schreiben von Sensor Werten in WMI
Wenn diese Option verwendet wird, werden die Sensorwerte in den folgenden WMI-Pfad (Windows Management Instrumentation) geschrieben:
Root\WMI\AIDA64_SensorValues
Wenn AIDA64 geschlossen wird, werden der Pfad und die Werte gelöscht. Temperaturen sind immer in °C angegeben und Sensor Labels sind immer auf Englisch.
Aktiviere das Schreiben von Sensor Werten zu Rivatuner OSD Server
Wenn diese Option ausgewählt wird, teilt AIDA64 die Sensorwerte (Temperaturen, Spannung und Lüfterinformationen) mit Rivatuner’s OSD Server über das Shared Memory “RTSSSharedMemoryV2”. Der Rivatuner OSD Server ist dazu befähigt, diese Werte auf einem OSD Panel anzuzeigen, sogar während der Video-Wiedergabe oder Vollbild-3D-Spielen.