次の方法で共有


RmStartSession 関数 (restartmanager.h)

新しい再起動マネージャー セッションを開始します。 システムで同時に開くことができるのは、ユーザー セッションあたり最大 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 つを返すことができます。

価値 意味
ERROR_SUCCESS
0
関数は正常に完了しました。
ERROR_SEM_TIMEOUT
121
割り当てられた時間内に、再起動マネージャー関数がレジストリ書き込みミューテックスを取得できませんでした。 再起動マネージャーの追加使用が失敗する可能性があるため、システムの再起動をお勧めします。
ERROR_BAD_ARGUMENTS
160
1 つ以上の引数が正しくありません。 Null 以外の値と 0 以外の値を必要とするパラメーターに NULL ポインターまたは 0 が渡された場合、このエラー値は Restart Manager 関数によって返されます。
ERROR_MAX_SESSIONS_REACHED
353
セッションの最大数に達しました。
ERROR_WRITE_FAULT
二十九
システムは、指定されたデバイスに書き込むことができません。
ERROR_OUTOFMEMORY
14
十分なメモリが使用できなかったため、再起動マネージャー操作を完了できませんでした。

注釈

同じセッション キーを持つセッションが既に存在する場合、 RmStartSession 関数はエラーを返します。

RmStartSession 関数は、ユーザー インターフェイスを制御するプライマリ インストーラー、または更新プログラム内の複数のパッチのインストール シーケンスを制御するプライマリ インストーラーによって呼び出される必要があります。

セカンダリ インストーラーは、プライマリ インストーラーの RmStartSession 関数呼び出しから返されたセッション ハンドルとセッション キーを使用して RmJoinSession 関数を呼び出すことによって、既存の Restart Manager セッションに参加できます。

要求事項

要件 価値
サポートされる最小クライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
ターゲット プラットフォーム ウィンドウズ
ヘッダー restartmanager.h
図書館 Rstrtmgr.lib
DLL Rstrtmgr.dll

こちらも参照ください

RmEndSession

RmJoinSession