ich habe ein Problem mit Diensten. Habe mir einen solchen zusammengebastelt und er funktioniert bis auf eine Kleinigkeit einwandfrei.
Ich bekomme den Dienst nicht pausiert (Pause Funktion in services.msc ist nicht anwählbar), Stoppen, Starten, Installieren und entfernen funktionieren ohne Probleme.
Für meinen spezielen Fall soll der Dienst im Pause Zustand eine andere Funktion erfüllen, als im Stop Zustand.
Irgendwie muß das doch mit dem Parameter #SERVICE_PAUSE_CONTINUE zusammenhängen, aber wie?
Ich installiere den Dienst mit folgendem Aufruf:
Code: Alles auswählen
Case "/install" ; Installiert den Dienst im System und startet ihn
hSCManager = OpenSCManager_(0, 0, #SC_MANAGER_CREATE_SERVICE)
hService = CreateService_(hSCManager, ServiceName, ServiceName, #SERVICE_ALL_ACCESS | #SERVICE_PAUSE_CONTINUE, #SERVICE_WIN32_OWN_PROCESS | #SERVICE_INTERACTIVE_PROCESS, #SERVICE_AUTO_START, #SERVICE_ERROR_NORMAL, AppPath, 0, 0, 0, 0, 0)
If StartService_(hSERVICE, 0, 0) : EndIf
If hSERVICE : WriteLog("Dienst installiert") : EndIf
If hSERVICE : MessageRequester("Info","Dienst erfolgreich installiert!", #MB_ICONINFORMATION) : EndIf
CloseServiceHandle_(hService)
CloseServiceHandle_(hSCManager)
Vielen Dank schonmal im vorraus.
Gruß, BI2