tag metaetiqueta encabezado ejemplos código code agrega wix service-installer

metaetiqueta - tags de encabezado wix



¿Puede wix solicitar un nombre de usuario/contraseña del servicio de Windows? (4)

Estoy usando Wix para instalar un servicio de Windows. El servicio deberá ejecutarse en una cuenta que no sea del sistema / servicio configurada por el usuario.

¿Es posible solicitar el nombre de usuario / contraseña para el inicio de sesión del servicio?


Puede establecer PROPIEDADES PÚBLICAS (mayúsculas) con las credenciales en la línea de comandos y usarlas para instalar el servicio.

msiexec.exe / I "setup.msi" / QN USER = "username" PASS = "password"

También se puede usar una acción personalizada para recuperar estos valores del usuario durante una instalación interactiva, pero si hace esto, recuerde hacer que la visualización del mensaje obedezca las configuraciones del valor UILevel . Mostrar un cuadro de mensaje de una acción personalizada en una instalación silenciosa se considera un grave error de configuración:

  • INSTALLUILEVEL_NONE 2 Instalación completamente silenciosa.
  • INSTALLUILEVEL_BASIC 3 Proceso simple y manejo de errores.
  • INSTALLUILEVEL_REDUCED 4 Interfaz de usuario creada, diálogos del asistente suprimidos.
  • INSTALLUILEVEL_FULL 5 Interfaz de usuario creada con asistentes, progreso, errores.

Quizás la mejor opción es mostrar el diálogo en una instalación interactiva y rechazar la instalación silenciosa si estas propiedades no están configuradas en la línea de comando. Esta es una acción personalizada simple para probar los valores de las propiedades USER y PASS.

Y, obviamente, no se recomienda el uso de cuentas de usuario para ejecutar servicios.



Sí, pero no está incorporado. Puede configurar una GUI en WiX (que no es demasiado intuitiva) donde puede solicitar cualquier configuración que necesite en pasos posteriores.

Primero, compruebe cómo crear una GUI que establezca propiedades personalizadas siguiendo estas pautas, asegurando que su GUI llene las propiedades SERVICEACCOUNT y SERVICEPASSWORD. Luego use el elemento ServiceInstall con esas propiedades como se muestra aquí .


Las Extensiones MSI de la comunidad en GitHub contienen un cuadro de diálogo ServiceCredDlg para solicitar el nombre de usuario y la contraseña. De acuerdo con los documentos , puede probar que las credenciales son válidas y que el usuario tiene derechos de "inicio de sesión como servicio".