您需要使用免费的 MSI 编辑器,例如 ORCA 或 SuperORCA。Microsoft 使用在其服务包中提供 ORCA 工具。不确定他们是否会继续这样做。您可以在http://www.pantaray.com/msi_super_orca.html找到 SuperORCA 工具。现在,当我有类似的任务来实现以下是我的方法时。我使用 SuperOrca 打开我的 MSI 文件。1]在修复/删除MSI对话框屏幕上,为“修改”添加一个单选按钮-在SuperOrca中->在单选按钮表下->为修改单选按钮添加条目
2] 将 BackButton 的文本从原来的“Back”重命名为“Reinstall” --> 在 SuperOrca 中--> 在 Control 表下 --> 更改 Text 属性以重命名 Back to Reinstall
3]选择修复/删除单选按钮启用完成按钮并禁用重新安装按钮。在选择修改单选按钮时启用重新安装按钮并禁用完成按钮 - 在 SuperOrca 中 - > 在 ControlCondition 表下 - > 添加条目以启用/禁用每个组合的“重新安装”和“完成”按钮以进行修复/删除屏幕(在我的案例对话框表单名称为“MaintananceForm”)
4] 现在从 SuperOrca 工具的 ControlEvent 表中找出 BackButton 的控制名称,在我的例子中是“PreviousButton”。现在从表中修改其事件、参数和条件条目。并且这些属性的值必须与 MSI 文件的欢迎屏幕中的“下一步”按钮属性相同,该文件重定向用户以显示可供选择的安装选项。
注意:这对我来说很好。但是当您再次重新选择安装选项并单击下一步时,它不会以某种方式强制安装所选选项。相反,它会修复 MSI。我尝试从 Windows\Installer 文件夹中删除条目,以便 MSI 不会选择已兑现的安装版本,但没有运气。如果有人对如何通过 MSI 设置向导强制 MSI 重新安装有答案,请告诉我。