Platform SDK: DirectX

IDirectPlayLobby3::EnumAddressTypes

IDirectPlayLobby3::EnumAddressTypes メソッドは、特定のサービス プロバイダDirectPlay アドレスを構築するのに必要なアドレス タイプをすべて列挙する。アプリケーションまたはロビーは、この情報を使用して、ユーザーから正しい情報を取得したり、DirectPlay アドレスを作成したりすることができる。

HRESULT EnumAddressTypes(
  LPDPLENUMADDRESSTYPESCALLBACK lpEnumAddressTypeCallback,
  REFGUID guidSP,
  LPVOID lpContext,
  DWORD dwFlags
);

パラメータ

lpEnumAddressTypeCallback
サービス プロバイダのアドレス タイプごとに呼び出す EnumAddressTypeCallback 関数へのポインタ。サービス プロバイダでアドレス タイプが使用されない場合は、コールバック関数は呼び出されない。
guidSP
列挙するアドレス タイプのサービス プロバイダの GUID へのポインタ (C++ の場合、これは GUID へのリファレンスである)。
lpContext
コールバック関数へ渡すコンテキスト。
dwFlags
将来の使用に備えて予約されているので、0 に設定しておく。

戻り値

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

DPERR_EXCEPTION
DPERR_INVALIDOBJECT
DPERR_INVALIDPARAMS

注意

EnumAddressTypes を使用すると、サービス プロバイダがユーザーに情報の入力を要求するダイアログ ボックスを表示するかどうかを判定できる。このダイアログ ボックスには、IP アドレスを入力するように要求するものなどがある。サービス プロバイダでアドレス タイプが使用されない場合、情報は不要なので、ダイアログ ボックスは表示されない。

アプリケーションは、IDirectPlay4::GetPlayerAddress を呼び出せば、アドレス タイプとして選択可能な項目のリストを取得できる。これは、モデム間サービス プロバイダでのみ使用できる。ANSI 文字列 (最後が NULL) である DirectPlay アドレスのデータ型の最後が W でない (たとえば、DPAID_INet) のに対して、Unicode 文字列 (最後が NULL) である DirectPlay アドレスのデータ型の最後は W である (たとえば、DPAID_INetW)。事前に定義された Microsoft 社のデータ タイプのリストについては、DirectPlay アドレスのデータ型を参照すること。

必要条件

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

参照

DirectPlay アドレスIDirectPlayLobby3::CreateAddress