使用Windows安装程序4.0和重新启动管理器,可以安全地假设“重新启动管理器”将负责关闭应用程序,因此不需要任何类型的自定义操作来处理关闭保存文件的进程,意味着待更新?
“Restart Manager”是否可能无法关闭应用程序? 当然,我知道当强制执行诸如DisableAutomaticApplicationShutdown之类的策略时,将禁用重启管理器。
要关闭的进程是否必须满足某些条件才能被Restart Manager关闭?
我正默默地运行我的msi软件包。
如果msi包请求重启,即使启用了“重启管理器”,我还能推断出什么?
非常感谢任何回应。
此致 Kiran Hegde
答案 0 :(得分:2)
重新启动管理器主要是一种更好的检测方案(比以前更好),用于检测安装操作期间正在使用的文件。例如,旧方案仅检测到运行具有顶级窗口的应用程序(不包括托盘应用程序)。自动关闭并重新启动的唯一应用程序是那些已注册执行此操作的应用程序。基本上这意味着您的应用程序调用RegisterApplicationRestart()告诉它您希望重新启动哪个命令行。该应用程序监视WM_QUERYENDSESSION消息,告知它即将关闭,并为其后续重新启动写入恢复信息。
此处示例:
http://www.advancedinstaller.com/user-guide/qa-vista-restart-manager.html
因此,您的一些问题不适用,但显然重点是防止重新启动,无论它是否为静默安装。如果静默安装需要重启,它就会这样做,因为无声真的意味着无声,没有人可以问,并且安装在重启之后才能完成。
当应用程序不做这项工作时,人们通常会使用WiX Util CloseApplication调用来关闭它们。
请注意,在安装时标记为停止(或卸载,视情况而定)的服务不会导致文件在使用情况。正在使用的文件检测机制忽略由标记为在ServiceControl表中停止的服务使用的文件。因此服务通常很好,但如果服务产生其他进程,那么它们可能导致使用中的文件情况。