次の方法で共有


IDirectPlay8Peer::EnumPlayersAndGroups メソッド

IDirectPlay8Peer::EnumPlayersAndGroups メソッド

セッションのすべてのプレーヤまたはグループの識別子、あるいはその両方の一覧を取得する。

構文

HRESULT EnumPlayersAndGroups(      
    DPNID *const prgdpnid,
    DWORD *const pcdpnid,
    const DWORD dwFlags
);

パラメータ

  • prgdpnid
    [out] セッションのグループまたはプレーヤの識別子、あるいはその両方がデータとして格納される配列へのポインタ。
  • pcdpnid
    [in] prgdpnid がポイントするバッファに格納できる識別子の数を指定する、DWORD 型の変数へのポインタ。バッファが小さすぎる場合、このメソッドは DPNERR_BUFFERTOOSMALL を返す。このパラメータには、必要なエントリの数が設定される。
  • dwFlags
    [in] 列挙の動作を記述するフラグ。次の 1 つまたは両方のフラグを設定できる。
    • DPNENUM_PLAYERS
      プレーヤの識別子のリストを返す。
    • DPNENUM_GROUPS
      グループの識別子のリストを返す。

戻り値

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

DPNERR_BUFFERTOOSMALL 指定されたバッファが小さすぎて、要求されたデータを格納できない。
DPNERR_INVALIDFLAGS このメソッドに渡されたフラグは無効である。

注意

グループおよびプレーヤの情報は頻繁に変化するため、返される必要なバッファ サイズは以降の呼び出しで変わる場合がある。メソッドが成功するまで、バッファを確認し、再割り当てすること。