without visual studio servicio reconoce name interno instalar externo como comando .net windows-services installutil

visual - Instalar un servicio.NET usando InstallUtil



windows service installer (4)

¿Se le solicita la cuenta para ejecutar el servicio o los derechos para instalar el servicio? Por el segundo, la instalación como administrador debería evitar que eso suceda. Para el primero, debes agregar un ServiceProcessInstaller a tu Instalador.

Creo que la superficie de diseño de un servicio tiene un enlace para crear un instalador de proyectos. En ese diseñador, puede agregar un instalador de proceso de tipo System.ServiceProcess.ServiceProcessInstaller. Las propiedades de este objeto le permiten configurar la cuenta que se usará para el servicio.

Estoy tratando de instalar un servicio .NET que escribí. Como recomienda MSDN, estoy usando InstallUtil. Pero me he perdido la forma de configurar el usuario del servicio predeterminado en la línea de comandos o incluso en el servicio en sí. Ahora, cuando se ejecuta InstallUtil, se mostrará un cuadro de diálogo solicitando al usuario las credenciales para un usuario. Estoy intentando integrar la instalación del servicio en una instalación más grande y necesito que la instalación del servicio permanezca en silencio.


Creo que lo pude haber encontrado. En el servicio en sí, el componente ServiceProcessInstaller creado automáticamente tiene una propiedad "Cuenta" que se puede establecer en "Servicio local", "LocalSystem", "NetworkService" o "User". Estaba por defecto en "Usuario", que debe haber mostrado el aviso.


También tenga en cuenta la utilidad SC.exe que no requiere la instalación de Visual Studio. Simplemente puede copiar este exe en el servidor que desea crear el servicio o incluso ejecutarlo de forma remota . Use el parámetro obj para especificar un usuario.

Aparentemente hay una GUI para esta herramienta, pero no la he usado.


Como ha notado, Karim, la propiedad "Cuenta" es la solución, aquí. Para aquellos interesados ​​en las diferencias entre los contextos de seguridad establecidos por esta propiedad:

http://msdn.microsoft.com/en-us/library/system.serviceprocess.serviceaccount.aspx

Arriba usando InstallUtil o SC, me gusta la idea de crear un AUTO INSTALADOR :

http://www.codeproject.com/KB/dotnet/WinSvcSelfInstaller.aspx

aunque encontré esto en la documentación de .Net 1.1:

El tipo ManagedInstallerClass admite la infraestructura de .NET Framework y no está destinado a ser utilizado directamente desde su código.