2013-02-27 40 views
2

我已经使用WiX创建了一个安装程序,并且如果用户试图在应用程序仍然打开时卸载它们,他们应该得到对话框,让他们选择让卸载程序关闭应用程序自动或保持运行,但需要重新启动。WiX卸载不能阻止应用程序,除非提升

似乎虽然用户帐户控制,我需要通过运行与msiexec从提升的命令提示符下发生这种情况发生之前升级。如果用户不升高,卸载程序将运行,他们点击删除图标(即提示提供高程),但是设置则干脆说:

"The setup must update files or services that cannot be updated while the system is running. If you choose to continue, a reboot will be required to complete the setup." 

我想他们不得不关闭该选项应用程序,即使只是卸载,而不必手动提升第一个

+1

什么显示该消息? AFAIK,这在Windows Installer中不是标准的。 – 2013-02-27 21:12:24

+1

此消息来自Windows Installer,它不是我自己编写的脚本。 – Tim 2013-02-28 09:10:35

+1

啊,你说得对。这是MSI 4.0中的一个“新”消息。我猜猜现在有什么不对。查看答案。 – 2013-02-28 15:08:53

回答

1

我最好的猜测是,您的MSI没有FilesInUse对话框,也没有MsiRMFilesInUse对话框。这些是“知名的”对话框,当Windows Installer检测到正在使用的文件时,它们将填充信息。如果您使用standard UIs之一,则WiX工具集应自动为您提供这些对话框。或者,您可以创建自己的对话框。