啟動新的重新啟動管理員會話。 在系統上,每位使用者會話最多可以開啟 64 個重新啟動管理員會話。 當此函式啟動會話時,它會傳回會話句柄和會話密鑰,以供後續呼叫 Restart Manager API 使用。
語法
DWORD RmStartSession(
[out] DWORD *pSessionHandle,
DWORD dwSessionFlags,
[out] WCHAR [] strSessionKey
);
參數
[out] pSessionHandle
重新啟動管理員會話句柄的指標。 會話句柄可以傳遞至重新啟動管理員 API 的後續呼叫。
dwSessionFlags
已保留。 此參數應該是 0。
[out] strSessionKey
Null 終止的字串,其中包含新工作階段的會話索引鍵。 呼叫 RmStartSession 函式之前,必須先配置大小CCH_RM_SESSION_KEY + 1字串。
返回值
這是收到的最新錯誤。 函式可以傳回 Winerror.h 中定義的其中一個 系統錯誤碼 。
| 價值觀 | 意義 |
|---|---|
|
函式已順利完成。 |
|
重新啟動管理員函式無法在分配的時間內取得登錄寫入 Mutex。 建議重新啟動系統,因為進一步使用重新啟動管理員可能會失敗。 |
|
一或多個自變數不正確。 如果 NULL 指標或 0 傳入需要非 Null 和非零值的參數,則 Restart Manager 函式會傳回這個錯誤值。 |
|
已達到會話數目上限。 |
|
系統無法寫入指定的裝置。 |
|
重新啟動管理員作業無法完成,因為沒有足夠的記憶體可用。 |
備註
如果具有相同會話密鑰的會話已經存在, RmStartSession 函式會傳回錯誤。
主要安裝程式應該呼叫 RmStartSession 函式,以控制使用者介面,或控制更新中多個修補程式的安裝順序。
次要安裝程式可以藉由呼叫 RmJoinSession 函式與從主要安裝程式 RmStartSession 函式呼叫傳回的會話句柄和會話密鑰,來聯結現有的 Restart Manager 工作階段。
需求
| 要求 | 價值觀 |
|---|---|
| 最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
| 支援的最低伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
| 目標平臺 | 窗戶 |
| 頁首 | restartmanager.h |
| 程式庫 | Rstrtmgr.lib |
| DLL | Rstrtmgr.dll |