He visto algunas preguntas relacionadas con Stackoverflow que se relacionan con esta, pero ninguna de ellas parece abordar el comportamiento específico que estoy observando.El servicio de Windows no se detiene y no se elimina al desinstalar (Wix)
Tengo un servicio de Windows definido de la siguiente manera en un archivo Wix 3.0 .wxs.
<Component Id='Service' Guid='3c658a54-b236-11e0-bbf6-039615e482ae' >
<File Id='ServiceEXE' Name='m_agent_service.exe'
Vital='yes' Source='..\m_agent_service.exe'
KeyPath='yes' />
<ServiceInstall Id='MerakiServiceInstall'
Vital='yes'
Name='MerakiPCCAgent' DisplayName='Meraki Client Insight Agent $(env.VERSION)' Description="Meraki Client Insight Monitoring and Management Service"
Type='ownProcess' Interactive='no' Start='auto' ErrorControl='normal'>
</ServiceInstall>
<ServiceControl Id='MerakiServiceControl'
Name='MerakiPCCAgent'
Start='install' Stop='both' Remove='uninstall'
Wait='yes' />
</Component>
Cuando instalo el .MSI, el servicio está instalado y ejecutándose. Estupendo.
Cuando desinstalo (ejecutando msiexec/x o usando Agregar/Quitar software del Panel de control), el servicio sigue ejecutándose y no se elimina. De hecho, el registro del servicio en sí me dice que no se ha invocado el código de apagado del servicio. (Cuando uso "sc stop", por ejemplo, me hago ver código de servicio de desactivación de ejecución limpiamente.)
Estas son algunas partes sobresalientes de la msiexec/x registro de desinstalación:
MSI (s) (14:04) [11:33:54:692]: 1 application(s) had been reported to have files
in use.
Info 1603. The file C:\Program Files\Meraki\PCC Agent 1.0.67\m_agent_service.exe
is being held in use by the following process: Name: m_agent_service, Id: 3120,
Window Title: '(not determined yet)'. Close that application and retry.
MSI (c) (40:78) [11:33:54:692]: File In Use: -m_agent_service- Window could not
be found. Process ID: 3120
MSI (c) (40:78) [11:33:54:692]: No window with title could be found for FilesInUse
[...]
Action start 11:33:57: UnpublishFeatures.
MSI (s) (14:04) [11:33:57:379]: Doing action: StopServices
MSI (s) (14:04) [11:33:57:379]: Note: 1: 2205 2: 3: ActionText
Action ended 11:33:57: UnpublishFeatures. Return value 1.
Action start 11:33:57: StopServices.
MSI (s) (14:04) [11:33:57:379]: Doing action: DeleteServices
MSI (s) (14:04) [11:33:57:379]: Note: 1: 2205 2: 3: ActionText
Action ended 11:33:57: StopServices. Return value 1.
Action start 11:33:57: DeleteServices.
MSI (s) (14:04) [11:33:57:379]: Doing action: RemoveFiles
[...]
MSI (s) (14:04) [11:33:57:645]: Product: Meraki Client Insight Agent -- Removal
completed successfully.
MSI (s) (14:04) [11:33:57:645]: Windows Installer removed the product. Product N
ame: Meraki Client Insight Agent. Product Version: 1.0.67. Product Language: 103
3. Removal success or error status: 0.
¿El servicio que está creando depende de algunos otros archivos o ensamblajes? Si es así, entonces necesitas obtener la identificación del proceso del servicio y luego matar el proceso. entonces puedes desinstalar el servicio –