【发布时间】:2015-07-15 13:29:19
【问题描述】:
我有一个用 Wix 编写的安装程序,有时会提示用户在修复后重新启动。怎么会发生这种情况以及如何消除这种行为?
【问题讨论】:
-
设置日志记录策略,它会将修复记录到 %temp% 的一个名为 MSI
.log 的文件中。 support.microsoft.com/en-us/kb/223300
标签: wix windows-installer reboot repair
我有一个用 Wix 编写的安装程序,有时会提示用户在修复后重新启动。怎么会发生这种情况以及如何消除这种行为?
【问题讨论】:
标签: wix windows-installer reboot repair
两种技术:
1) 确定重启的原因并避免它。 (例如:停止服务,杀死进程)
2) 使用 REBOOT 属性禁止重新启动。注意修复可能要等到重启后才会生效。
1 通常是最好的选择。
【讨论】:
修复后重新启动的最常见原因是安装程序访问了应用程序仍处于锁定状态的文件。这通常可以在修复日志中识别(有时需要花费一些时间才能找到安装程序遇到问题的文件)。如果您无法在日志中找到所需的信息,请在此处发布,我们将与您一起查看。
【讨论】:
在您的 WXS 文件中的相关位置添加此属性,并确保没有任何内容会覆盖其他内容的值。这将导致重新启动提示不会发生并且即使在静默运行时检测到有必要也不会发生重新启动,因为当您未设置此选项时,静默重新启动提示将自动触发重新启动顺序属性值为"ReallySuppress"。
<Property Id="REBOOT" Value="ReallySuppress" />
如果您愿意,可以在这里阅读:https://msdn.microsoft.com/en-us/library/windows/desktop/aa371101
【讨论】: