Anwendung als Service starten, wie?



  • Hallo!
    Wie kann ich eine Anwendung als Systemservice eintragen?

    Kevin



  • Das Eintragen geht mit CreateService.



  • weiß jemand warum ich hier service failed kriege?

    manager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
    	if(manager == NULL)
    	{
    		MessageBox(0, "manager failed", 0, 0);
    	}
    	service = CreateService(manager, "lpstr", "lpstr", SC_MANAGER_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS,
    		SERVICE_AUTO_START, SERVICE_ERROR_IGNORE,
    		"c:\\Linetaker2.exe", NULL, NULL, NULL, "lpstr", NULL);
    
    	if(service == NULL)
    	{
    		MessageBox(0, "service failed", 0, 0);
    	}
    	if(StartService(service, NULL, NULL))
    	{
    		MessageBox(0, "Success", 0, 0);
    	}
    


  • Surkevin schrieb:

    weiß jemand warum ich hier service failed kriege?

    GetLastError weiß das ganz sicher. Mir gefallen aber einige Parameter nicht. Für Parameter 4 solltest Du SERVICE_ALL_ACCESS nehmen. Das, was Du dort nimmst, gehört zu einer anderen Funktion. Dann überlege Dir, ob nicht lieber SERVICE_ERROR_NORMAL anstelle von IGNORE verwendest. Und das Benutzername und Kennwort stimmen, kann ich mir beim besten Willen auch nicht vorstellen.



  • Welcher Benutzername und welches Kennwort wird da benötigt? das von win2k ist ja wohl unmöglich, da es auf jedem Rechner laufen soll und nicht nur auf einen abgestimmt sein soll 🙂



  • Benutzername: "If this parameter is NULL, CreateService uses the LocalSystem account."

    Kennwort: "Specify an empty string if the account has no password or if the service runs in the LocalService, NetworkService, or LocalSystem account."



  • ja dann reichts ja wenn ich 2mal NULL NULL mach


Anmelden zum Antworten