c ++ - Kommandolinjeapplikation kører som en windows service. Får fejl 1053

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har oprettet en c ++ kommandolinjeprogram. Denne applikation sender en genoplivning af beskeder fra andre computere og logger resultaterne til en fil. En simpel ansøgning. En af de første ting, som appen gør, er at skrive til logfilen starttiden.


Nu hvor jeg har fået ansøgningen til et godt sted, vil jeg installere det som en tjeneste, der kører på min computer (sejr 7).


Jeg bruger NSIS, Simple\_Service\_Plugin til at installere applikationen og registrere tjenesten i Windows. Jeg kan se tjenesten i Windows Service Manager. [2] [3]


Når jeg forsøger at starte tjenesten, får jeg følgende fejlmeddelelse. Logfilen bliver ikke oprettet.


Windows could not start \_\_THE\_APP\_\_ service on Local Computer. 
Error 1053: The service did not respond to the start or control request in a timely fashion. 


Når jeg starter appen fra at udforske, starter den uden problemer, og logfilen opdateres korrekt.


Når jeg søger denne fejlmeddelelse online finder jeg masser af hjælp til C # og. Net applikationer og intet til c + + apps.


Mit spørgsmål er:



  1. Hvordan starter jeg en C ++-applikation (ikke dot.net) som en tjeneste?


Bedste reference


En tjeneste er ikke en almindelig appliction. Det er et program, der bruger specifikke systemklasser og implementerer visse funktioner, der gør det muligt for operativsystemet at kommunikere med det.


Se her (og de omkringliggende sider) for flere detaljer. [5]