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