卸载在WIX中创建的安装程序时未删除windows服务
我已经创建了安装windows服务的安装程序,但当我卸载它时,该服务将保持启动状态,而不是删除。我已经在Wix中创建了安装msi卸载在WIX中创建的安装程序时未删除windows服务,wix,wix3.5,Wix,Wix3.5,我已经创建了安装windows服务的安装程序,但当我卸载它时,该服务将保持启动状态,而不是删除。我已经在Wix中创建了安装msi <DirectoryRef Id="INSTALLDIR"> <Component Id='MyComponent' Guid='CDBA9BC4-F839-4CAB-8AB0-4397EC079541'> <File Id='LogFWService' Name='LogFWService.exe' Source="$(
<DirectoryRef Id="INSTALLDIR">
<Component Id='MyComponent' Guid='CDBA9BC4-F839-4CAB-8AB0-4397EC079541'>
<File Id='LogFWService' Name='LogFWService.exe' Source="$(var.LFShared)\LogFWService.exe" KeyPath="yes" />
<ServiceInstall Id="InstallLFService" Name="LogFWService" DisplayName="OpenFramework Logging Service" Start="auto" ErrorControl="normal" Description="Captures log events and inserts the log messages into database" Type="ownProcess">
<ServiceDependency Id="MSMQ" />
</ServiceInstall>
<ServiceControl Id="sc_InstallLFService" Name="LogFWService" Start="install" Remove="uninstall" Stop="both" Wait="yes"/>
</Component>
</DirectoryRef>
即使我使用了“删除文件”属性,但它仍然不会在卸载时删除windows服务。
请帮助任何了解卸载windows服务的人。我也遇到过类似的问题。我不是100%确定,但我认为它在我更改安装组件的GUID后消失了。以前的GUID是从另一个项目复制粘贴的,以及安装windows服务的整个安装标记,我忘了用新GUID替换它 顺便说一句,您可以使用命令propmt命令sc删除“剩余”服务:
sc delete“YourServiceNameHere”我在开发环境中测试同一wix安装程序的多个版本时遇到过这种情况。问题是它无法删除实体(组件),因为存在仍然声明的依赖项。这通常是由于一些注册表项是从以前的尝试遗留下来的 搜索以下项并删除相应的(不是全部)键
- 组件中密钥文件的ID
- 组件的GUID
- 目录/文件夹名称(可以包含在\HKLM\MS\Win\CurVer\Installer\Folders中的引用计数中)
- 密钥文件的名称(也包括引用计数,但不在密钥文件夹中)
理想情况下,您应该在一台可以恢复到先前状态的机器上测试安装程序。我遇到了同样的问题,有人能帮我解决这个问题吗?