Platform SDK: DirectX |
EnumSessionsCallback2 は、IDirectPlay4::EnumSessions メソッドに対するアプリケーション定義のコールバック関数である。
BOOL FAR PASCAL EnumSessionsCallback2( LPCDPSESSIONDESC2 lpThisSD, LPDWORD lpdwTimeOut, DWORD dwFlags, LPVOID lpContext );
列挙を継続する場合は、TRUE を返す。列挙を停止する場合は、FALSE を返す。
アプリケーションでは、IDirectPlay4::EnumSessions メソッドを使用するために、この関数を実装する必要がある。このコールバック関数は、列挙されたセッションごとに 1 回ずつ呼び出される。すべてのセッションが列挙されたら、このコールバック関数は DPESC_TIMEDOUT フラグを設定してもう一度呼び出される。
アプリケーションでセッションの性質を判定するには、DPSESSIONDESC2 の各フラグを調べる。
セキュア セッション の場合、DPSESSIONDESC2 の dwMaxPlayers メンバと dwCurrentPlayers メンバには 0 が設定される。
コールバック関数で返されるポインタは一時的なものであり、コールバック関数の内部でのみ有効である。アプリケーションは、ポインタ情報を保存する必要がある場合、データを保持するためのメモリを割り当て、データをコピーしてから、この新しいデータへのポインタを保存する必要がある。この関数で、lpThisSD は一時的なものである。また、lpThisSD パラメータで指定された構造体内のポインタの lpszSessionName/lpszSessionNameA と lpszPassword/lpszPasswordA も一時的なものであるので注意すること。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dplay.h で宣言。