Hey, ich habe doch gerade auf deine Email geantwortet.
Setz das erst mal um und dann frag nochmal.
> Bei mir schlägt bereits die erste Zeile mit einer „Zugriffsverletzung
> bei Adresse 00000000“ fehl:
>
> DevInfo := SetupDiGetClassDevs(@GUID_DEVICE_BATTERY, nil, 0,
> DIGCF_PRESENT
> or DIGCF_DEVICEINTERFACE);
Hier sitzt der Fehler. Das Setup
API wird dynamisch geladen, daher ist SetupDiGetClassDevs eine noch uninitialisierte Variable.
Vor der Verwendung der Funktionen des Setup
API muss einmal LoadSetupAPI aufgerufen werden und hinterher UnloadSetupAPI.
Vorzugsweise in FormCreate bzw. FormDestroy.
Das Battery
API ist in der
Win32 Konversion der
Jedi Apilib enthalten (JwaBatClass.pas)
http://www.sf.net/projects/jedi-apilib