首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在WIX升级期间重新启动windows服务

在WIX升级期间重新启动windows服务
EN

Stack Overflow用户
提问于 2018-06-09 11:48:16
回答 1查看 349关注 0票数 0

我们已经安装了一个windows服务作为msi WIX安装程序的一部分。在升级期间,我们正在尝试重新启动服务,而不是完全重新安装,以安全保护服务用户凭据。

在这方面讨论了很多帖子,但没有一个是决定性的。

已尝试通过执行以下操作在升级过程中禁用DeleteServices,

代码语言:javascript
复制
<InstallExecuteSequence>
   <DeleteServices>NOT UPGRADINGPRODUCTCODE</DeleteServices>
</InstallExecuteSequence>

注意:上面的代码也是在旧的MSI中

但仍然看到服务被实际删除和重新安装。已尝试在升级期间禁用installservice,如下所示

代码语言:javascript
复制
<InstallServices>NOT WIX_UPGRADE_DETECTED</InstallServices>

但服务处于停止状态,安装程序在操作中失败,ExecServiceConfig代码为1603,因为服务未处于运行状态。

任何关于这方面的建议都会很有帮助。

EN

回答 1

Stack Overflow用户

发布于 2018-06-10 05:51:22

不久前,我为类似的东西写了一个答案:。请阅读该链接以获得几个不同的建议。

Minor Upgrade:除了链接答案中的选项外,您还可以使用次要升级-如果这是一个可行的选项。在较小的升级中,产品不是卸载然后重新安装,而是“就地”升级。对于较小的升级,您需要严格遵守组件规则-这可能很难做到,但您肯定可以在不丢失服务证书的情况下进行升级。See bottom here for how a minor upgrade is applied。我将直接链接到an answer with a little bit of info on late REP

Permanent Component:正如上面链接的答案所述,您可以将具有服务配置设置的组件设置为永久组件。在这种情况下,它永远不会在升级过程中卸载,但也不会在真正的卸载过程中卸载。因此,您必须在“真正的”卸载时手动清理服务安装和文件安装(与设置UPGRADINGPRODUCTCODE的主要升级启动卸载相反)。一种简单的方法,我并不是很喜欢。

(托管)服务帐户:不是我用过的东西,但可以调查上面链接答案中描述的较新的concept of managed service accountsStep-by-step

Late REP / Service :正确安排RemoveExistingProducts late意味着在升级方案期间不应卸载您的服务(有关详细信息,请参阅链接的答案)。严格遵守所有组件规则可能很困难,但您可以通过将您的服务放在自己的最小服务安装微星中,然后通过WiX刻录捆绑包进行安装(按顺序安装微星文件)来缓解这一点。

正如多次提到的,请务必阅读类似的答案:Wix: Windows Service sometimes uninstalled when upgrading

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50770724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档