Wix主要升级:如何防止Windows服务重新安装?
发布时间:2020-12-30 17:55 所属栏目:117 来源:网络整理
导读:我正在安装一个应该安装几个 Windows服务的安装程序.我们经常进行新的构建(使用新的.msi文件),并且我们使用主要的升级方法,以便在以前的安装中轻松安装. 问题是我们需要更新服务文件,而不会覆盖服务配置(例如帐户用户名和密码). 我们在保存服务exe文件的组件
我正在安装一个应该安装几个 Windows服务的安装程序.我们经常进行新的构建(使用新的.msi文件),并且我们使用主要的升级方法,以便在以前的安装中轻松安装. 问题是我们需要更新服务文件,而不会覆盖服务配置(例如帐户用户名和密码). 我们在保存服务exe文件的组件中使用ServiceInstall和ServiceControl.有没有办法使ServiceInstall执行条件(使用像REMOVE =“ALL”和NOT UPGRADINGPRODUCTCODE这样的条件),所以服务在升级时不会被卸载(刚停止,所以我们可以升级文件)? 一个解决方案是使用自定义操作,但也许有更好的方法? 谢谢! 看来我正在错误的地方.解决我的问题是将NOT UPGRADINGPRODUCTCODE添加到DeleteServices标准操作中.这修复了我的问题.这种方法的注意事项是删除当前msi文件安装的所有服务(或不删除).所以我无法在升级时选择性地删除/保留服务.这对我来说很好,但是我的要求是保持升级之间的服务登录信息(而不是实际的服务代码). 更新:DeleteServices的条件可以从InstallExecuteSequence元素中的WiX访问. (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读