.net - c # fejl på windows service

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har følgende fejl:


 OpenSCManager Failed 5: Access is denied.  


Kan nogen hjælpe mig? Er der en anden måde ud over at bruge installutil til at installere Windows-tjenesten?


P.S: Jeg bruger Visual Studio 2008. Jeg kiggede efter installutil i C:VisualStudio..., men jeg kan heller ikke finde den.


Jeg fandt InstallUtil.exe eksekverbar. Jeg kører programmet og nu har jeg fejlen: c: ... \ InstallUtil, installLog nægtes. HVORFOR?

Bedste reference


Der er to spørgsmål her:



  1. For adgang nægtet problem. Chancerne er at du ikke har tilladelser. Kør kommandoen med administrative privilegier. Det betyder at du skal være medlem af administratorkoncernen, og din proces skal hæves, dvs. du skal højreklikke -> Kør som administrator til luk processen.

  2. Der er mange måder at installere service på. Da du allerede kender InstallUtil, behøver jeg ikke at nævne det.



    • Der er Win32 API kaldet CreateService.

    • Der er kommandolinjeværktøj sc.exe - det leveres med OS som standard

    • Hvis du er så tilbøjelig, kan du hacke registreringsdatabasen - det er ikke så svært at vende engineering records under HKLM \ System \ CurrentControlSet \ Service \




Jeg foretrækker personligt sc.exe. Det installerer administrerede tjenester helt fint. [3] [4]