Richtige InstallUtil Pfadsyntax in Datei?
-
16-09-2019 - |
Frage
Ich versuche, einen Windows-Dienst unter Verwendung einer Batch-Datei zu installieren, nennen wir es „installservice.bat“. Innerhalb der Datei habe ich die folgenden Befehle:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe -i ".\MyService.exe" pause
Wenn ich excute die Batchdatei (läuft als Administrator auf Vista) ich diese:
Exception occurred while initializing the installation: System.IO.FileNotFoundException: Could not load file or assembly 'file:///C:\Win dows\system32\MyService.exe' or one of its dependencies. The system cannot f ind the file specified..
Der eigentliche Service befindet sich unter C: \ Services \ MyService.exe. Was sollte der „\ MyService.exe“ Teil sein, um richtig zu funktionieren?
Lösung
Warum nicht nur füttern InstallUtil den vollständigen Pfad?
Andere Tipps
Für den Fall, jemand anderes hier kommt für diesen Fehler ... wenn Sie InstallUtil.exe laufen, , wenn der Pfad zu Ihrem Dienst Leerzeichen enthält, setzen Sie es mit Anführungszeichen. Ja, das ist offensichtlich, aber der Fehler gibt es Ihnen, wenn Sie nicht tun, ist es nicht.
falsch ...
C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe
rechts ...
C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe"
die bat-Datei MyService.exe Ordner kopieren und ausführen, wie Sie es sonst einen Fehler erhalten.