如果已使用 WiX 安装产品,如何将 MSI 退出代码设置为 0?
我的 WiX 设置中已包含以下行来检查当前版本是否已安装:
MSI 退出并显示一条消息和退出代码“1638”。 但是,此 MSI 是引导程序的一部分,该引导程序将多个 MSI 链接在一起 - 我希望引导程序继续并安装以下 MSI。
如何告诉 WiX/MSI 以退出代码 0 退出并且没有消息对话框?
我可以修改引导程序,但更愿意将退出代码设置为 0。
(确切的退出代码是:ERROR_PRODUCT_VERSION - “此产品的另一个版本已安装。此版本的安装无法继续。配置或删除现有版本要使用此产品,请使用控制面板上的“添加/删除程序”。”)
I already have the following line in my WiX setup to check if the current version is already installed:
<UpgradeVersion OnlyDetect='yes' Property='NEWPRODUCTFOUND' Minimum='$(var.ProductVersion)' IncludeMinimum='no' />
The MSI exits with a message and exit code "1638".
However, this MSI is part of a bootstrapper that chains multiple MSIs together - and I want the bootstrapper to continue and install the following MSIs.
How do I tell WiX/MSI to exit with exit code 0 and no message dialog?
I could modify the bootstrapper but would rather prefer to set the exit code to 0.
(The exact exit code is: ERROR_PRODUCT_VERSION - "Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs on the Control Panel.")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看来 WixExitEarlyWithSuccess 自定义操作 正是您所需要的。
It seems WixExitEarlyWithSuccess Custom Action is what you need.