MSI Unistall:如何强制卸载UI序列

时间:2011-01-27 17:26:08

标签: wix windows-installer

通过双击我通过WIX创建的MSI卸载应用程序时,我得到了我设计的“更改,修复,删除”对话框。但是,当通过添加/删除程序卸载或通过msiexec /x从命令行卸载时,我没有。我得到的是“你确定要卸载这个程序吗?”

我想在卸载时强制用户始终提示“更改,修复,删除”对话框。原因是我在删除时调用了一些自定义UI。另一种方法是始终强制用户完成我设计的删除UI序列。

有关如何使用WiX执行此操作的任何提示?

3 个答案:

答案 0 :(得分:1)

最简单的方法是将ARPNOREMOVE property设置为 1

这样,用户只能选择更改或修改,并使用完整的UI 。覆盖安装按钮有点复杂,通常不值得。

答案 1 :(得分:1)

如果你只是使用MSI,你很遗憾无法控制它。通常,要强制卸载UI序列,您需要实现一个引导程序,并使用所需的UILevel调用您的MSI,而不是让ARP直接调用您的MSI。

答案 2 :(得分:1)

如果要在卸载时在InstallUISequence表中显示对话框,请尝试:
步骤1 :在UISequence表中显示对话框的条件是REMOVE =“ALL”
第2步:“msiexec.exe / x {ProductCode} / qf”
qf:完整的用户界面
祝你好运!