0

使用Windows安裝程序4.0和重新啓動管理器,假設「重新啓動管理器」負責關閉應用程序,因此不需要任何自定義操作來處理關閉持有文件的進程,意味着要更新?使用Windows安裝程序重新啓動管理器的行爲

「重新啓動管理器」可能不會關閉應用程序嗎? Ofcourse,據我所知,當執行諸如DisableAutomaticApplicationShutdown的策略時,重啓管理器被禁用。

要關閉的進程是否必須滿足某些標準才能被Restart Manager關閉?

我正在靜默運行我的msi軟件包。

即使啓用了「重新啓動管理器」,我如何推斷msi包是否需要重新啓動?

任何迴應將非常感激。

問候, 基蘭赫格德

+0

您的帖子中嵌入了很多問題。你能解釋一下使用Restart Manager嘗試修復的特定問題嗎? – jbudreau

回答

1

重啓管理器主要是用於檢測使用中的安裝操作過程中的文件更好的檢測方案(比以前)。例如,舊計劃僅檢測到具有頂級窗口的應用程序(不包括托盤應用程序)。自動關閉並重新啓動的唯一應用程序是已註冊完成的應用程序。基本上這意味着你的應用程序調用RegisterApplicationRestart()告訴它你希望重新啓動的命令行。該應用程序監視WM_QUERYENDSESSION消息,告訴它它即將關閉,併爲後續重新啓動寫入恢復信息。

這裏舉例:

http://www.advancedinstaller.com/user-guide/qa-vista-restart-manager.html

所以大家的一些問題不適用,但很明顯的一點是要防止重新啓動,無論是靜默安裝與否。如果無提示安裝需要重啓,它只會執行它,因爲靜默實際上意味着保持沉默,沒有人會問,而且安裝在重啓後才完成。

當應用程序不執行此項工作時,人們通常會訴諸諸如WiX Util CloseApplication調用來關閉它們。

請注意,標記爲安裝時停止(或卸載,視情況而定)的服務不會導致文件在用情況。使用中文件檢測機制會忽略ServiceControl表中標記爲停止的服務正在使用的文件。所以服務通常很好,但是如果服務產生其他進程,那麼它們可能會導致文件在使用的情況。

+0

感謝您的詳細信息。上面發佈的鏈接特定於GUI應用程序.RegisterApplicationRestart()僅適用於GUI應用程序。如果我的應用程序有持有文件的服務,那該怎麼辦?重新啓動管理器會自動在RMFilesInUse對話框中列出我的服務嗎?另外,假設所有的Windows服務和應用程序都在重新啓動管理器中註冊,是否安全? –

相關問題