如何才能停止和重大升级时在威克斯无法卸载Windows服务?(How to only stop an

2019-08-22 05:09发布

我的工作是应该在WiX的V3.8安装Windows服务的安装程序。 问题是,我们需要一个重大的升级,而不卸载服务才停止它。

我们使用ServiceInstall和的ServiceControl保存服务exe文件的组件中。 有没有一种方法,使ServiceInstall有条件的执行(使用像REMOVE =“ALL”,而不是UPGRADINGPRODUCTCODE的条件),所以升级时的服务没有卸载(刚停,所以我们可以通过升级文件)?

一个解决办法是使用自定义操作,但也许有更好的办法?

谢谢!

Answer 1:

你将不得不重写处理这些元素的动作。 如果它适用于您的MSI包中的所有服务(如果你只有一个服务的话,雅佳)以下人士可只要你是好工作:

<InstallExecuteSequence>
   <DeleteServices>NOT UPGRADINGPRODUCTCODE</DeleteServices>
</InstallExecuteSequence>

你并不需要调理删除自DeleteServices将在组件的状态已经计算在内。



文章来源: How to only stop and not uninstall windows services when major upgrade in wix?