使用重新啟動管理員
下列各節說明如何使用重新啟動管理員 API。 您的應用程式和服務也應該遵循應用程式與服務 的指導方針。
使用 Microsoft Windows Installer
Microsoft Windows Installer 4.0 版是 Windows Vista 或 Windows Server 2008 的應用程式安裝服務。 使用 Windows Installer 4.0 版進行安裝和服務的應用程式會自動使用重新啟動管理員來減少系統重新啟動。 自訂安裝程式也可以設計為呼叫重新啟動管理員 API,以直接關閉和重新啟動應用程式和服務,以避免需要系統重新啟動。 如果系統重新啟動是不可避免的,安裝程式可以使用 InitiateShutdown 或 ExitWindowsEx 函式,以將中斷降到最低給使用者的方式進行排程。 互動式 Windows Installer 套件應該實作使用者介面,其中包含 MsiRMFilesInUse 對話方塊。 如需詳細資訊,請參閱 Windows Installer SDK 檔中 使用 Windows Installer 搭配重新啟動管理員。
使用重新啟動管理員 API 搭配自訂安裝程式
自定義安裝程式,或包含造成系統重新啟動之自定義動作的 Windows Installer 套件,可以使用重新啟動管理員 API 來關閉和重新啟動應用程式和服務。
- 使用重新啟動管理員 API 執行的所有作業都必須與會話相關聯。 在系統上,每位使用者會話最多可以開啟 64 個重新啟動管理員會話。 主要安裝程式會啟動並結束重新啟動管理員(Restart Manager)的會話。 如需搭配單一安裝程式使用重新啟動管理員的詳細資訊,請參閱 搭配主要安裝程式使用重新啟動管理員。
- 如果安裝過程需要,可以將一或多個次要安裝程式連接至重新啟動管理器的會話中,並能在主要安裝程式的同一進程或不同進程中運行。 次要安裝程式需要主要安裝程式提供會話密鑰才能加入會話。 如需使用次要安裝程式的詳細資訊和範例,請參閱 搭配次要安裝程式使用重新啟動管理員。
- 互動式安裝程式應該實作使用者介面,其中包含 MsiRMFilesInUse 對話方塊,以要求使用者關閉應用程式和服務。 如需詳細資訊,請參閱 Windows Installer SDK 檔中 使用 Windows Installer 搭配重新啟動管理員。
- 安裝程式可以呼叫重新啟動管理員 API 來變更、取消,以及取得目前重新啟動管理員作業的狀態。 如需詳細資訊,請參閱下列主題:取得重新啟動管理員作業的狀態,取消目前的重新啟動管理員作業。
- 在呼叫重新啟動管理員 API 之前,安裝程式不應該停用文件系統重新導向。 某些 32 位安裝程式在 64 位 Windows 上執行,可能無法在 %windir%\system32 目錄中註冊檔案。