【发布时间】:2017-11-15 12:37:44
【问题描述】:
WiX 中的 MajorUpgrade 元素似乎正在卸载现有版本。但我有一个要求,我必须从 1.0.0 升级到 2.0.0,而无需卸载 1.0.0。但这并不意味着它会在添加/删除程序中同时显示 1.0.0 和 2.0.0。我的1.0.0版本有一个文件,一个注册表项,一个自定义windows服务等等。我的 2.0.0 本质上会修改现有文件并添加一个新文件。在我们的例子中,可以只进行这样的更改并且仍然增加主要版本。但是为此,我不想卸载并重新安装服务等。但如果是全新安装,则必须安装所有组件。例如,如果客户安装了 7.9.0 版本并想要升级到 8.0.0(这在技术上可能是重大升级,因为主要版本已更新或次要升级,因为可能只有从 7.9.0 到 8.0 的增量更改.0?),完全卸载 7.9.0 可能会导致数据丢失等问题。有没有办法做到这一点?如果是这样,任何人都可以提供一些步骤/示例或提供一些显示此内容的链接吗?注意:我不是在谈论补丁。我能够使补丁正常工作。但我也对小升级和小升级感到困惑。
FireGiant's Tutorial 谈论使用
【问题讨论】:
-
听起来您想在 InstallFinalize 之后安排 RemoveExistingProducts 操作。这样,您的 2.0 MSI 将安装在 1.0 安装的“顶部”,然后在最后尝试卸载/取消引用 1.0 安装。
标签: wix windows-installer upgrade