Platform SDK: DirectX

IDirectPlayLobby3::RunApplication

IDirectPlayLobby3::RunApplication メソッドは、アプリケーションを起動して、それをセッションに接続するために必要なすべての情報をそのアプリケーションに渡す。このメソッドは、ロビー クライアントにより使用される。

HRESULT RunApplication(
  DWORD dwFlags,
  LPDWORD lpdwAppID,
  LPDPLCONNECTION lpConn,
  HANDLE hReceiveEvent
);

パラメータ

dwFlags
将来の使用に備えて予約されているので、0 に設定しておく。
lpdwAppID
起動されたアプリケーションを識別する ID が設定される変数へのポインタ。ロビー クライアントは、IDirectPlayLobby3::SendLobbyMessage メソッドや IDirectPlayLobby3::ReceiveLobbyMessage メソッドを呼び出すときに使用するために、このアプリケーション ID を保存しておく必要がある。
lpConn
起動するアプリケーションや、ユーザー ダイアログ ボックスを表示しないでセッション インスタンスにそのアプリケーションを接続する方法を指定するのに必要な情報がすべて格納された DPLCONNECTION 構造体へのポインタ。
hReceiveEvent
ロビー メッセージが受信されたときに設定される同期イベントを指定する。このイベントは、IDirectPlayLobby3::SetLobbyMessageEvent メソッドを使用すると、後で変更できる。

戻り値

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

DPERR_CANTCREATEPROCESS
DPERR_GENERIC
DPERR_INVALIDINTERFACE
DPERR_INVALIDOBJECT
DPERR_INVALIDPARAMS
DPERR_OUTOFMEMORY
DPERR_UNKNOWNAPPLICATION

注意

このメソッドは、アプリケーション プロセスが作成された後で戻る。ロビー クライアントは、アプリケーションのステータスを示すシステム メッセージを受け取る。ロビー クライアントがセッションのホストであるアプリケーションを起動している場合、セッションに参加するその他のアプリケーションを起動するときは、DPLSYS_DPLAYCONNECTSUCCEEDED システム メッセージを受け取るまで待ってから処理を行う。アプリケーションがセッションを作成したり、参加したりできない場合は、DPLSYS_DPLAYCONNECTFAILED メッセージが生成される。またロビー クライアントは、アプリケーションが接続設定を読み取ったときは DPLSYS_CONNECTIONSETTINGSREAD システム メッセージを、アプリケーションが終了したときは DPLSYS_APPTERMINATED システム メッセージを受け取る。

ロビー クライアントが DPLSYS_CONNECTIONSETTINGSREAD システム メッセージを受け取る前に、その IDirectPlayLobby3 インターフェイスを解放しないことは重要である。ロビー クライアントは、メッセージを受信するまで IDirectPlayLobby3::ReceiveLobbyMessage をループ処理でチェックすることも、同期イベントを指定することもできる。

必要条件

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

参照

IDirectPlayLobby3::ReceiveLobbyMessageIDirectPlayLobby3::GetConnectionSettings,、IDirectPlayLobby3::SetLobbyMessageEvent