Platform SDK: DirectX

IDirectPlayLobby3::CreateAddress

IDirectPlayLobby3::CreateAddress メソッドは、サービス プロバイダに固有のネットワーク アドレスを指定して DirectPlay アドレスを作成する。結果出力されたアドレスには、サービス プロバイダのグローバル ユニーク識別子 (GUID) と、サービス プロバイダがネットワーク アドレスとして解釈可能なデータが含まれている。

ただし、IDirectPlayLobby3::CreateCompoundAddress では、複数のデータ チャンクを使用してアドレスを使用できる。そのため、IDirectPlayLobby3::CreateCompoundAddress を使用する必要がある。

HRESULT CreateAddress(
  REFGUID guidSP,
  REFGUID guidDataType,
  LPCVOID lpData,
  DWORD dwDataSize,
  LPVOID lpAddress,
  LPDWORD lpdwAddressSize
);

パラメータ

guidSP
サービス プロバイダの GUID へのポインタ (C++ の場合、これは GUID へのリファレンスである)。
guidDataType
使用されている特定のネットワーク アドレス タイプを識別する GUID へのポインタ(C++ の場合、これは GUID へのリファレンスである)。事前に定義されているネットワーク アドレス タイプについては、DirectPlay アドレス を参照すること。
lpData
特定のネットワーク アドレスが格納されているバッファへのポインタ。
dwDataSize
lpData 内のネットワーク アドレスのサイズ (バイト単位)。
lpAddress
作成した DirectPlay アドレスを書き込むバッファへのポインタ。
lpdwAddressSize
DirectPlay アドレス バッファのサイズが格納されている変数へのポインタ。サービス プロバイダは、このメソッドを呼び出す前に、lpdwAddressSize をバッファのサイズに初期化する必要がある。メソッドが戻った後、このパラメータには lpAddress に書き込まれたバイト数が設定されている。バッファが小さすぎた場合 (DPERR_BUFFERTOOSMALL)、このパラメータには DirectPlay アドレスを格納するのに必要なサイズが設定されている。

戻り値

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

DPERR_BUFFERTOOSMALL
DPERR_INVALIDPARAMS

注意

IDirectPlayLobby3::CreateCompoundAddress メソッドを使用すると、CreateAddress で許可されているよりも長い DirectPlay アドレスを作成できる。

必要条件

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

参照

IDirectPlayLobby3::EnumAddressIDirectPlayLobby3::CreateCompoundAddressDirectPlay アドレスDirectPlay アドレスのデータ型