Pregunta

Estoy tratando de instalar un servicio de Windows utilizando un archivo por lotes, vamos a llamarlo "installservice.bat". Dentro del archivo que tengo los siguientes comandos:

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

Cuando excute el archivo por lotes (que se ejecuta como administrador en Vista) me sale esto:

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

El servicio real se encuentra en C: \ Services \ MiServicio.exe. Cuál debe ser la "\ MiServicio.exe" parte será para que funcione correctamente?

¿Fue útil?

Solución

¿Por qué no alimentar InstallUtil la ruta completa?

Otros consejos

Sólo en caso de que alguien viene aquí por este error ... cuando se ejecuta InstallUtil.exe, si la ruta a su servicio contiene espacios, se emplearán comillas. Sí, esto es obvio, pero el error que te da si no lo hace no lo es.

mal ...

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

derecho ...

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

copie el archivo bat Mi carpeta Service.exe y ejecutar, no se obtendrá ningún error.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top