2009-08-14 16 views
11

Próbuję zainstalować usługę Windows przy użyciu pliku wsadowego, nazwijmy ją "installservice.bat". Wewnątrz pliku mam następujące polecenia:Prawidłowa ścieżka InstallUtil do składni plików?

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe -i ".\MyService.exe" 
    pause

Kiedy excute plik wsadowy (uruchomiony jako administrator na Vista) uzyskać to:

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..

Rzeczywista usługa znajduje się w katalogu C: \ Services \ MyService.exe. Co powinien mieć plik ". \ MyService.exe", aby działał poprawnie?

Odpowiedz

3

Dlaczego nie podawać tylko pliku InstallUtil?

+0

Dzięki, nie wiedziałem, że będzie działać. –

+0

to faktycznie zadziałało dla mnie. – lstanczyk

0

skopiuj plik nietoperza MyService.exe i wykonaj, nie otrzymasz żadnego błędu.

9

Na wypadek, gdyby ktoś inny przyszedł tutaj z powodu tego błędu ... po uruchomieniu InstallUtil.exe, , jeśli ścieżka do twojej usługi zawiera spacje, otocz ją cudzysłowami. Tak, to jest oczywiste, ale błąd, który daje, jeśli nie, nie jest.

źle ...

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe 

rację ...

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "C:\Users\joeblow\Documents\Visual Studio 2010\Projects\WindowsService1\WindowsService1\bin\Debug\WindowsService1.exe" 
Powiązane problemy