Platform SDK: DirectX

DirectPlay4.CreateGroupInGroup

DirectPlay4.CreateGroupInGroup メソッドは、既存のグループ内にグループを作成する。ほかのグループ内に作成されたグループが列挙されるのは、DirectPlay4.GetDPEnumGroupsInGroup メソッドを使用した場合だけである。このようにして作成されたグループを破棄するには、DirectPlay4.DestroyGroup メソッドを呼び出す。

object.CreateGroupInGroup(parentid As Long,
  friendlyName As String,
  formalName As String,
  flags As CONST_DPGROUPFLAGS) As Long

パラメータ

object
DirectPlay4 オブジェクトを表すオブジェクト式。
parentid
グループの作成先となる、既存のグループの DirectPlay ID。
friendlyName
作成されたグループを識別し、それにアクセスするために使用するハンドル。このトークン識別子は、formalName とは異なるものでなければならない。
formalName
作成されたグループを識別し、それにアクセスするために使用するハンドル。このトークン識別子は、friendlyName とは異なるものでなければならない。
flags
CONST_FLAGS 列挙型のフラグで、作成するグループのタイプを示す。DPGROUP_LOCAL または DPGROUP_STAGINGAREA のいずれかになる。DPGROUP_LOCAL が設定されていない場合、グループはリモート グループである。

戻り値

作成されたグループの DirectPlay ID を返す。

エラー コード

失敗すればエラーが発生し、Err.Number に次のいずれかの値が設定される。

DPERR_CANTADDPLAYER
DPERR_CONNECTIONLOST
DPERR_INVALIDFLAGS
DPERR_INVALIDGROUP
DPERR_INVALIDPARAMS

グループを作成できなかった場合は、DPERR_CANTADDPLAYER を返す。親グループの ID が無効の場合は、DPERR_INVALIDGROUP を返す。

注意

グループをクライアント/サーバー セッションで作成した場合、グループ通知メッセージは送信されない。グループは、コンピュータがクライアントであるか、ホストであるかに関係なく、そのグループを作成したコンピュータからしか認識することができない。

グループをピアツーピア セッションで作成した場合、CreateGroupInGroup は、DPSYS_CREATEPLAYERORGROUP システム メッセージを生成して、この変更をほかのプレーヤーに通知する。

最上位グループを破棄すると、そのグループに含まれるメンバもすべて破棄され、適切な破棄メッセージが送信される。