DPN_APPLICATION_DESC 構造体
DPN_APPLICATION_DESC 構造体
Microsoft® DirectPlay® アプリケーションの設定を記述する。
構文
typedef struct _DPN_APPLICATION_DESC {
DWORD dwSize;
DWORD dwFlags;
GUID guidInstance;
GUID guidApplication;
DWORD dwMaxPlayers;
DWORD dwCurrentPlayers;
WCHAR *pwszSessionName;
WCHAR *pwszPassword;
PVOID pvReservedData;
DWORD dwReservedDataSize;
PVOID pvApplicationReservedData;
DWORD dwApplicationReservedDataSize;
} DPN_APPLICATION_DESC, *PDPN_APPLICATION_DESC;
メンバ
- dwSize
DPN_APPLICATION_DESC 構造体のサイズ。アプリケーションは、この構造体を使う前に、まずこのメンバを設定する必要がある。 - dwFlags
アプリケーションの動作を記述する次のいずれかのフラグ。DPNSESSION_CLIENT_SERVER
このタイプのセッションはクライアント/サーバーである。このフラグを DPNSESSION_MIGRATE_HOST と組み合わせることはできない。DPNSESSION_MIGRATE_HOST
ピアツーピア セッションで使われ、ホストの移行を可能にする。このフラグを DPNSESSION_CLIENT_SERVER と組み合わせることはできない。DPNSESSION_NODPNSVR
DPNSVR からホストに列挙を転送してはならない。詳細については、「DirectPlay DPNSVR アプリケーションの使い方」を参照すること。DPNSESSION_REQUIREPASSWORD
セッションをパスワードにより保護する。このフラグを設定した場合、pwszPassword に有効な文字列を指定する必要がある。DPNSESSION_NOENUMS
DirectPlay に列挙クエリーの開始を許可しない。DPNSESSION_FAST_SIGNED
各パケットに 8 バイト値を追加する。受信側がこの値を受け取る前に、このパケットはこの値を保持している必要がある。DPNSESSION_FULL_SIGNED
パケットの内容に基づいてローリングする 8 バイトの SHA1 ハッシュ値を追加する。パケットに正しい SHA1 シグネチャがないと、受け取られない。
- guidInstance
起動時に DirectPlay が生成するグローバル一意識別子 (GUID)。このメンバは、IDirectPlay8Peer::GetApplicationDesc、IDirectPlay8Client::GetApplicationDesc、または IDirectPlay8Server::GetApplicationDesc を呼び出すときの [out] パラメータである。IDirectPlay8Peer::Connect メソッドおよび IDirectPlay8Client::Connect メソッドを呼び出すときの、省略可能な [in] パラメータである。IDirectPlay8Peer::SetApplicationDesc メソッドまたは IDirectPlay8Server::SetApplicationDesc メソッドを呼び出すときは、GUID_NULL に設定する必要がある。この GUID は、IDirectPlay8Server::Host または IDirectPlay8Peer::Host メソッドを呼び出しても取得できない。GUID は GetApplicationDesc メソッドを呼び出して取得しなければならない。 - guidApplication
アプリケーションの GUID。 - dwMaxPlayers
セッションで使えるプレーヤの最大数を指定する DWORD 型の変数。プレーヤの数を無制限にするときは、このメンバを 0 に設定する。 - dwCurrentPlayers
セッションに現在接続されているプレーヤの数を指定する DWORD 型の変数。このメンバは、IDirectPlay8Peer::GetApplicationDesc、IDirectPlay8Client::GetApplicationDesc、IDirectPlay8Server::GetApplicationDesc の各メソッドのみによって設定される。 - pwszSessionName
セッションの名前を指定する WCHAR 型の変数へのポインタ。このメンバは、情報を伝えるだけの目的でホストまたはサーバーによって設定される。クライアントがこの名前を使ってホストまたはサーバーに接続することはできない。 - pwszPassword
セッションへの接続に必要な Unicode パスワードを指定する WCHAR 型の変数へのポインタ。dwFlags メンバに DPNSESSION_REQUIREPASSWORD が設定されていない場合、この値は NULL にする必要がある。 - pvReservedData
DirectPlay の予約済みデータへのポインタ。アプリケーションはこの値を変更してはならない。 - dwReservedDataSize
pvReservedData メンバに保持されているデータ サイズを指定する DWORD 型の変数。アプリケーションはこの値を変更してはならない。 - pvApplicationReservedData
アプリケーション固有の予約済みデータへのポインタ。この値はオプションであり、NULL に設定できる。 - dwApplicationReservedDataSize
pvApplicationReservedData メンバのデータのサイズを指定する DWORD 型の変数。この値はオプションであり、NULL に設定できる。
注意
アプリケーションの複数のインスタンスは、セッションで同時に実行できる。複数のインスタンスが実行される場合、各インスタンスは、関連付けられた独自の DPN_APPLICATION_DESC 構造体を持つ。"アプリケーション" とは、その特定のインスタンスのことを示す。
dwMaxPlayers、pvApplicationReservedData、dwApplicationReservedDataSize、pwszPassword、pwszSessionName の各メンバは、IDirectPlay8Peer::Host、IDirectPlay8Server::Host、IDirectPlay8Peer::SetApplicationDesc、または IDirectPlay8Server::SetApplicationDesc のいずれかのメソッドを呼び出すときに設定できる。
DPNSESSION_FAST_SIGNED フラグまたは DPNSESSION_FULL_SIGNED フラグを設定すると、プレーヤは Microsoft DirectX® 8.1 以前のバージョンを使ってセッションに接続できなくなる。これらのフラグを一緒に使うことはできない。
セキュリティ上の警告 パスワードで保護されたセッションに接続する場合、pwszPassword メンバのデータはクリア テキストでホストに送信される。
構造体の情報
ヘッダー | dplay8.h |
最低限のオペレーティング システム | Windows 98、Pocket PC 2002 |