Microsoft DirectX 8.0 (Visual Basic)

DirectPlay8Peer.EnumHosts

Microsoft® DirectPlay® ゲームをホストするアプリケーションを列挙する。列挙基準を満たすアプリケーションが見つかると、アプリケーションのメッセージ ハンドラに DirectPlay8Event.EnumHostsResponse メソッドが呼び出される。このメソッドは、見つかったアプリケーションを記述する DPN_APPLICATION_DESC 型を格納する DPNMSG_ENUM_HOSTS_RESPONSE メッセージ型を含む。

EnumHosts(ApplicationDesc As DPN_APPLICATION_DESC, _
    AddrHost As DirectPlay8Address, _
    DeviceInfo As DirectPlay8Address, _
    lRetryCount As Long, _
    lRetryInterval As Long, _
    lTimeOut As Long, _
    lFlags As Long, _
    lFlags As CONST_DPNOPERATIONS, _
    UserData As Any, _
    UserDataSize As Long) As Long

指定項目

ApplicationDesc
列挙するアプリケーション ホストを指定する DPN_APPLICATION_DESC 構造体。列挙への応答数を減らすため、次のフィールドを指定できる。
guidApplication
検索するアプリケーションの GUID。指定されない場合は、すべてが検索される。
Password
指定するパスワード。セキュア セッションではパスワードがないと応答しない。
AddrHost
アプリケーションをホストしているコンピュータのアドレスを指定する DirectPlay8Address オブジェクト。
DeviceInfo
列挙するサービス プロバイダおよび設定を指定する DirectPlay8Address オブジェクト。
lRetryCount
列挙データを送信する回数を指定する値。このパラメータを 0 に設定すると、デフォルト値を指定できる。この値に INFINITE を設定した場合、列挙は取り消されるまで続行される。
lRetryInterval
列挙を試みる間隔 (ミリ秒単位) を指定する値。このパラメータを 0 に設定すると、デフォルト値を使用できる。
lTimeOut
列挙を実行する時間 (ミリ秒単位)。0 が指定された場合は、デフォルト値が使用される。INFINITE が指定された場合、列挙は取り消されるまで続行される。
lFlags
このメソッドが処理される方法を制御するフラグ。このメソッドには、次のフラグを設定できる。
DPNOP_SYNC
メソッドを同期をとりながら処理する。
UserData
列挙要求からホストに送信されるデータ ブロック。ネットワーク タイプによってデータのサイズに制限があるが、最低でも 512 バイトはサポートされている。
UserDataSize
UserData パラメータのデータのサイズ。

戻り値

この処理に対する非同期ハンドルを返す。これは、要求が非同期で処理される場合に、要求を取り消すために DirectPlay8Peer.CancelAsyncOperation メソッドの lAsyncHandle パラメータで使用されるハンドルである。

エラー コード

失敗した場合は、Err.Number に次のいずれかの値が設定される。

DPNERR_TIMEDOUT
DPNERR_INVALIDFLAGS
DPNERR_INVALIDPARAM

注意

列挙の処理にはさまざまな方法があるため、メディアに関して特に知識がない限り、アプリケーションでは lRetryInterval、lRetryCount、orlTimeOut を指定しないことを推奨する。