Platform SDK: DirectX |
ここでは、C++ でのアプリケーション開発について説明する。Visual Basic については、「DirectPlay Visual Basic チュートリアル」を参照すること。
DirectPlayLobby を作成したら、IDirectPlayLobby3::GetConnectionSettings メソッドを使用して、ロビーから返される接続設定を取得する。このメソッドがDPERR_NOTLOBBIED を返す場合、ロビーはこのアプリケーションを起動しておらず、ユーザーは接続を手作業で構成する必要がある。その他のエラーが発生した場合、アプリケーションではエラーを報告し、アプリケーションのロビーが失敗したことを知らせる必要がある。
次の例は、接続設定の取得方法を示している。
// ロビーから接続設定を取得し、g_pdplConnection に設定する。 hr = g_pDPLobby->GetConnectionSettings( 0, NULL, &dwSize ); if ( FAILED(hr) && (DPERR_BUFFERTOOSMALL != hr) ) { if( DPERR_NOTLOBBIED == hr ) { *pbLaunchedByLobby = FALSE; // ロビーから起動したわけではないので、クリーンアップする。 SAFE_DELETE_ARRAY( g_pDPLConnection ); SAFE_RELEASE( g_pDPLobby ); return S_OK; } return hr; } // 接続にメモリを割り当てる。 SAFE_DELETE_ARRAY( g_pDPLConnection ); g_pDPLConnection = (DPLCONNECTION*)new BYTE[ dwSize ]; // 接続設定を取得する。 if ( FAILED( hr = g_pDPLobby->GetConnectionSettings( 0, g_pDPLConnection, &dwSize ) ) ) return hr;
次項 : ステップ 3 : セッション記述の構成