ロビー対象アプリケーションの起動
ロビー対象アプリケーションの起動
ユーザーがアプリケーションを選択し、ユーザーのシステムにそのアプリケーションが登録されていることをロビー クライアントが確認すると、アプリケーションを起動できるようになる。そのためには、IDirectPlay8LobbyClient::ConnectApplication を呼び出す。最初のパラメータは、アプリケーションの起動に必要な情報が格納された DPL_CONNECT_INFO 構造体である。 この情報には、次のものが含まれる。
- アプリケーションを識別するグローバル一意識別子 (GUID)。
- 接続の設定 (ユーザーの Microsoft® DirectPlay® アドレスを含む)。DirectPlay アドレスの詳細については、「DirectPlay アドレシング」を参照すること。
- アプリケーションがホストとなるかどうか。
IDirectPlay8LobbyClient::ConnectApplication を呼び出すときは、pvUserApplicationContext パラメータに接続のコンテキスト値を設定できる。IDirectPlay8LobbyClient::ConnectApplication を呼び出すときに接続のコンテキスト値を設定しない場合、DPL_MSGID_CONNECT メッセージを処理するときに pvConnectionContext パラメータを設定できる。この値が設定された後は、その接続から受信するメッセージで、接続のコンテキスト値が pvConnectionContext パラメータで渡される。複数の接続からメッセージを受信し、共通のロビー クライアント メッセージ ハンドラを使っている場合、このパラメータが役立つ。
IDirectPlay8LobbyClient::ConnectApplication メソッドは、以降のすべての通信でアプリケーションの識別に使うアプリケーション ハンドルを返す。アプリケーションが起動し、接続の確立が成功すると、メッセージ ハンドラは DPL_MSGID_CONNECT メッセージを受信する。
注 IDirectPlay8LobbyClient::ConnectApplication メソッドが成功コードを返して接続を確認する前に、メッセージ ハンドラが DPL_MSGID_CONNECT を受信することがある。メッセージ ハンドラは、メソッドから復帰していなくても、メッセージを処理できなければならない。