Mein Tipp: Du arbeitest mit Delphi2009 oder Delphi2010. Dort sind Chars WideChars und Strings UnicodeStrings. Der Code lädt aber die Ansi-Variante der Windows-Funktionen aus der Dll. Probier mal in diesem Teil
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| begin hLib := LoadLibrary('ADVAPI32.DLL'); if hLib <> 0 then begin @EnumServicesStatus := GetProcAddress(hLib,'EnumServicesStatusA'); if @EnumServicesStatus = nil then raise Exception.Create('EnumServicesStatusA'); @OpenSCManager := GetProcAddress(hLib,'OpenSCManagerA'); if @OpenSCManager = nil then raise Exception.Create('OpenSCManagerA'); end; |
Die A's durch W's zu ersetzen. Alternativ im Rest des Codes alle Chars durch AnsiChars und Strings durch AnsiStrings.
We are, we were and will not be.