Platform SDK: DirectX |
IDirectPlay4::EnumPlayers メソッドは、現在開いているセッションのプレーヤーを列挙する。開いているセッションがない場合は、DPENUMPLAYERS_SESSION フラグとセッションの guidInstance を指定すると、リモート セッションのプレーヤーを列挙できる。パスワードで保護されたリモート セッションは列挙できない。
アプリケーションで実装するコールバック関数へのポインタは必ず指定する。DirectPlay は、セッションの中で dwFlags で指定された条件に一致するプレーヤーごとにそのコールバック関数を呼び出す。
このメソッドは、ロビー セッション内では必ず DPERR_ACCESSDENIED を返す。
HRESULT EnumPlayers( LPGUID lpguidInstance, LPDPENUMPLAYERSCALLBACK2 lpEnumPlayersCallback2, LPVOID lpContext, DWORD dwFlags );
次の値のいずれかまたはいくつかを指定できる。
成功した場合は DP_OK を返す。失敗した場合は、次のエラー値のいずれかを返す。
DPERR_CONNECTIONLOST |
DPERR_INVALIDPARAMS |
DPERR_NOSESSIONS |
DPERR_UNAVAILABLE |
コールバックが無効な場合、guidInstance が無効な場合、または無効なフラグが指定された場合は、DPERR_INVALIDPARAMS を返す。開いているセッションがない場合は、DPERR_NOSESSIONS を返す。リモート セッションを列挙できなかった場合は、DPERR_UNAVAILABLE を返す。
このメソッドは、デフォルトでは、現在開いているセッションのプレーヤーを列挙する。DPENUMPLAYERS_GROUP フラグを使用すると、グループも列挙に含めることができる。DPENUMPLAYERS_SESSION フラグは、セッション インスタンスの GUID と共に使用して、セッションのホストにその列挙用リストを提供するように要求できる。このメソッドは、IDirectPlay4::EnumSessions 列挙内からは呼び出すことができない。また、このメソッドで DPENUMPLAYERS_SESSION フラグを使用するときは、IDirectPlay4::EnumSessions メソッドが呼び出された後で、また IDirectPlay4::Close メソッドや IDirectPlay4::Open メソッドを呼び出す前に行う必要がある。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dplay.h で宣言。
インポート ライブラリ : dplayx.lib を使用。
IDirectPlay4::CreatePlayer、IDirectPlay4::DestroyPlayer、IDirectPlay4::EnumSessions