Entwickler-Ecke

Windows API - dienste auflisten und beenden


acnut - Fr 28.05.10 21:32
Titel: dienste auflisten und beenden
wie kann ich dienste in einer listivew auflisten und beenden

hab das hier probiert:
http://www.michael-puff.de/Programmierung/Delphi/Code-Snippets/EnumServices.shtml

aber das funktiooniert leider nicht(ich sehe nur chinesische oder japanische zeichen)


ist dieses code villeicht nicht mehr für windows 7 anwendbar?


mfg


Gausi - Fr 28.05.10 22:44

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.


acnut - Sa 29.05.10 10:16

danke funktioniert


mfg

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Zitat:
ok funktioniert doch nicht ganz wenn ich das mit einem listbox mache sehe ich diesmal fragezeichen
aber mit memo funktioniert es


mfg


//funktioniert doch, hab einen pchar übersehen.


mfg