Also geht's nun mit sc
query im Vergleich zu vorher? Das ist ja schon mal ein Fortschritt.
Ich empfehle, eine ordentliche Fehlerbehandlung zu machen. Also sowas wie
Delphi-Quellcode:
if SCService = 0 then
RaiseLastOsError;
statt einfach nur eine generische Meldung auszugeben. Meine Vermutung: Starten und Stoppen von Diensten ist Administratoren vorbehalten, daher wird das Öffnen des Dienstes mit diesen Flags wegen fehlender Rechte nicht klappen. Wenn du nur den Status des Dienstes ermitteln willst, reicht das SERVICE_QUERY_STATUS.
Grüße
Dalai