新しい再起動マネージャー セッションを開始します。 システムで同時に開くことができるのは、ユーザー セッションあたり最大 64 個の再起動マネージャー セッションです。 この関数は、セッションを開始すると、セッション ハンドルとセッション キーを返します。このキーは、それ以降の Restart Manager API の呼び出しで使用できます。
構文
DWORD RmStartSession(
[out] DWORD *pSessionHandle,
DWORD dwSessionFlags,
[out] WCHAR [] strSessionKey
);
パラメーター
[out] pSessionHandle
再起動マネージャー セッションのハンドルへのポインター。 セッション ハンドルは、それ以降の Restart Manager API の呼び出しで渡すことができます。
dwSessionFlags
予約済み。 このパラメーターは 0 にする必要があります。
[out] strSessionKey
新しいセッションへのセッション キーを含む null で終わる文字列。 サイズ CCH_RM_SESSION_KEY + 1 の文字列は、 RmStartSession 関数を呼び出す前に割り当てる必要があります。
戻り値
これは、受信した最新のエラーです。 この関数は、Winerror.h で定義されている システム エラー コード の 1 つを返すことができます。
| 価値 | 意味 |
|---|---|
|
関数は正常に完了しました。 |
|
割り当てられた時間内に、再起動マネージャー関数がレジストリ書き込みミューテックスを取得できませんでした。 再起動マネージャーの追加使用が失敗する可能性があるため、システムの再起動をお勧めします。 |
|
1 つ以上の引数が正しくありません。 Null 以外の値と 0 以外の値を必要とするパラメーターに NULL ポインターまたは 0 が渡された場合、このエラー値は Restart Manager 関数によって返されます。 |
|
セッションの最大数に達しました。 |
|
システムは、指定されたデバイスに書き込むことができません。 |
|
十分なメモリが使用できなかったため、再起動マネージャー操作を完了できませんでした。 |
注釈
同じセッション キーを持つセッションが既に存在する場合、 RmStartSession 関数はエラーを返します。
RmStartSession 関数は、ユーザー インターフェイスを制御するプライマリ インストーラー、または更新プログラム内の複数のパッチのインストール シーケンスを制御するプライマリ インストーラーによって呼び出される必要があります。
セカンダリ インストーラーは、プライマリ インストーラーの RmStartSession 関数呼び出しから返されたセッション ハンドルとセッション キーを使用して RmJoinSession 関数を呼び出すことによって、既存の Restart Manager セッションに参加できます。
要求事項
| 要件 | 価値 |
|---|---|
| サポートされる最小クライアント | Windows Vista [デスクトップ アプリのみ] |
| サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
| ターゲット プラットフォーム の | ウィンドウズ |
| ヘッダー | restartmanager.h |
| 図書館 | Rstrtmgr.lib |
| DLL | Rstrtmgr.dll |