Platform SDK: DirectX

IDirectPlay4::StartSession

IDirectPlay4::StartSession メソッドは、ステージング領域から DirectPlay セッションを起動する。まず、SetGroupConnectionSettings を呼び出して起動するアプリケーション、使用するサービス プロバイダ、および使用するセッション記述を指定する。

StartSession が呼び出されると、グループ内の各プレーヤーは、プレーヤーにセッションを起動するように指示された DPMSG_STARTSESSION を受信する。

HRESULT StartSession(
  DWORD dwFlags,
  DPID idGroup
);

パラメータ

dwFlags
使用しない。0 に設定しておく。
idGroup
セッション起動コマンドを送信するグループの ID。グループは、ステージング領域でなければならない。

戻り値

成功した場合は DP_OK を返す。失敗した場合は、次のエラー値のいずれかを返す。

DPERR_ACCESSDENIED
DPERR_CONNECTIONLOST
DPERR_INVALIDFLAGS
DPERR_INVALIDGROUP
DPERR_INVALIDPARAMS

指定されたグループ ID が有効なステージング領域でない場合は、DPERR_INVALIDGROUP を返す。

注意

セッションが既に起動されているステージング領域グループに参加するプレーヤーは、このメソッドを呼び出せばセッションに参加できる。プレーヤーは、セッションへの参加方法を指示した DPMSG_STARTSESSION メッセージを受け取る。

IDirectPlay4::GetGroupConnectionSettings を呼び出して、DPLCONNECTION 構造体のポインタを介して DPSESSIONDESC2 構造体に返される guidInstance パラメータを調べると、セッションが既に処理されているかどうかを判定できる。guidInstance が GUID_NULL の場合、処理中のセッションはない。その他の値の場合、セッションは既に処理されている。

必要条件

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dplay.h で宣言。
  インポート ライブラリ : dplayx.lib を使用。

参照

同期起動