Pregunta

Es necesario crear muchos servicios de Windows para alojar muchos servicios de WCF para que pueda dejar de una sola (por ejemplo, para actualizarlo) y mantener al otro en ejecución.

Ya que no quiero crear un servicio de Windows para cada servicio WCF que tengo, estoy tratando de crear una aplicación de C # que puede registrarse como un servicio de Windows pero con diferentes parámetros (nombre del servicio y, por supuesto).

Por ejemplo llamando de esta manera:

MyService.exe /install WcfService1.dll
MyService.exe /install WcfService2.dll

Esto crea dos ventanas diferentes servicios como los siguientes:

WcfService1 -> MyService.exe /run WcfService1.dll
WcfService2 -> MyService.exe /run WcfService2.dll

No se puede encontrar una manera de hacer esto que no sea la edición directa del registro.

¿Fue útil?

Solución

He encontrado una manera más agradable de hacerlo: sc.exe

sc.exe create WcfService1 binPath= "MyService.exe /run WcfService1.dll"

así que sólo hay que crear un palo / cmd para lanzar este comando.

Otros consejos

Por su naturaleza, un servicio está diseñado para ser la salida al proceso para tratar una cosa en particular, y tener varias instancias en general no es una buena idea. Sin embargo, es posible hacer lo que quiere; por ejemplo, puede tener varias instancias de SQL Server que se ejecuta al mismo tiempo.

Tiene una lectura de este . Básicamente, su instalador servicio puede darse alguna de línea de comandos u otro argumento configurable que le dirá que el nombre del que deba registrarse en Windows como un servicio. Esto es normalmente automático basado en las instrucciones de instalación del servicio y las propiedades servicio de ejecutables, pero todo esto se puede ajustar de forma dinámica también. Cambiar el nombre, y se cambia el registro del servicio. El nombre del servicio debe ser (que yo sepa) registrable por el ser ejecutable de ejecución como el servicio, lo que puede decir que el servicio WCF para los cuales es responsable.

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