Wix 了解MSI卸载-EXECUTEACTION=INSTALL
我想在卸载期间运行的自定义操作有问题。 自定义操作负责注销系统级windows服务 自定义操作:Wix 了解MSI卸载-EXECUTEACTION=INSTALL,wix,windows-installer,wix3.5,wix3.6,Wix,Windows Installer,Wix3.5,Wix3.6,我想在卸载期间运行的自定义操作有问题。 自定义操作负责注销系统级windows服务 自定义操作: <CustomAction Id='UnregisterService' Directory='INSTALLDIR' ExeCommand='[INSTALLUTIL] /u "/config=[INSTALLDIR]\configInstall.xml" " ... Return='ignore'
<CustomAction Id='UnregisterService'
Directory='INSTALLDIR'
ExeCommand='[INSTALLUTIL] /u "/config=[INSTALLDIR]\configInstall.xml" " ...
Return='ignore'
Execute='deferred' />
我的问题是:
谢谢 在您完全理解Windows Installer之前,应该避免自定义操作,以避免用更脆弱的解决方案重新发明轮子。要在卸载期间删除服务,您只需:
<ServiceControl Id="myService" Name="MyService" Stop="both" Remove="uninstall"/>
阅读这篇好文章:
Windows installer安装事务可以采用多种形式。初始安装、修复、维护安装、卸载、升级、修补等。安装程序在不同级别跟踪功能、组件和产品的状态变化,因此安装/卸载的概念更为详细。不应该安装
而不是升级ProductCode
(其中包含和)?是的,谢谢,修复了。REMOVE=“ALL”不升级ProductCode将是卸载的条件,但升级时则不是。正如Chris所说,您无论如何都不应该这样做-安装/卸载/启动/停止/删除服务有很多标准支持。我需要向服务传递参数:[INSTALLUTIL]/u”/config=[INSTALLDIR]\configInstall.xml”“…我如何使用ServiceControl做到这一点?ServiceControl将替换该调用。
Property(C): EXECUTEACTION = INSTALL
Property(C): ACTION = INSTALL
Product: BLABLA -- Installation completed successfully.MSI (c) (BC:50) [14:35:37:067]: Windows Installer installed the product. Product Name: BLABLA . Product Version: 5.1.0. Product Language: 1033. Manufacturer: BLABLA Team. Installation success or error status: 0.
<ServiceControl Id="myService" Name="MyService" Stop="both" Remove="uninstall"/>