Uso de la configuración de servicios

La configuración de servicios permite a Windows Installer personalizar los servicios en un equipo. Los desarrolladores pueden crear un paquete de Windows Installer para instalar, detener, iniciar y eliminar servicios durante una instalación mediante las tablas ServiceControl y ServiceInstall y las acciones InstallServices, StopServices y DeleteServices.

A partir de los paquetes escritos para Windows Installer 5.0, los desarrolladores también pueden usar la acción estándar MsiConfigureServices y la tabla MsiServiceConfig para configurar las opciones de personalización de servicios extendidos disponibles con Windows 7 y Windows Server 2008 R2, y Windows Vista y Windows Server 2008. Los paquetes de instalación existentes escritos para las versiones de Windows Installer que no incluían la tabla MsiServiceConfig se pueden seguir instalando con Windows Installer 5.0. La característica de configuración de servicios de Windows Installer no puede configurar cuentas de servicio de red, instalar procesos de host de servicio compartido (svchost) ni reiniciar los servicios detenidos como parte de la instalación.

No se admiten Windows XP y Windows Server 2003 ni versiones anteriores. Las tablas de configuración de servicio y las acciones estándar están disponibles a partir de Windows Installer 5.0 que se ejecuta en Windows 7 y Windows Server 2008 R2, y Windows Installer 4.5 que se ejecutan en Windows Vista y Windows Server 2008.

Debe incluir la acción MsiConfigureServices en la tabla InstallExecuteSequence para solicitar las configuraciones de servicio que especifique en la tabla MsiServiceConfig. Windows Installer usa la información de la tabla MsiServiceConfig solo si la acción estándar MsiConfigureServices está incluida en una tabla de secuencia. La acción estándar MsiConfigureServices también usa información de las tablas ServiceControl y ServiceInstall.

Para solicitar que el sistema proporcione solo los privilegios necesarios para un servicio determinado, especifique el servicio y la opción de configuración SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO en la tabla MsiServiceConfig. Quite los privilegios innecesarios del token de proceso del servicio. Esta opción se puede usar para configurar los servicios que se ejecutan en el contexto de seguridad de las cuentas de usuario del servicio LocalSystem, LocalService o NetworkService.

Para solicitar que el sistema retrase el inicio automático de un servicio durante un tiempo después del inicio de todos los demás servicios de inicio automático, especifique el servicio y la opción SERVICE_CONFIG_DELAYED_AUTO_START en la tabla MsiServiceConfig. El servicio que se retrasa debe instalarlo el paquete actual con el parámetro SERVICE_AUTO_START especificado en la tabla ServiceInstall o el servicio debe estar ya instalado como servicio de inicio automático.

Para solicitar que el sistema reserve un recurso para uso exclusivo de un servicio determinado, especifique el servicio, el tipo de SID de servicio y la opción de configuración SERVICE_CONFIG_SERVICE_SID_INFO en la tabla MsiServiceConfig. Agregue el SID del servicio a la lista de control de acceso del recurso.

Para solicitar que el Administrador de control de servicios (SCM) espere después de enviar la notificación de SERVICE_CONTROL_PRESHUTDOWN a un servicio, haga lo siguiente. Especifique el servicio, el período de tiempo que debe esperar SCM y la opción de configuración SERVICE_CONFIG_PRESHUTDOWN_INFO en la tabla MsiServiceConfig.

Para configurar cuándo el sistema debe ejecutar acciones después del error de un servicio, especifique el servicio y la opción SERVICE_CONFIG_FAILURE_ACTIONS_FLAG en la tabla MsiServiceConfig. Agregue las acciones que se van a ejecutar en la tabla MsiServiceConfigFailureActions.

Para más información sobre las funcionalidades de personalización de servicios extendidos que se incluyeron con los sistemas operativos Windows Vista y Windows Server 2008, consulte Cambios de servicio para Windows Vista.