Skip to main content

XLaunchNewGame

現在のゲームを終了し、割り当てられているリソースを解放し、新しいゲームを起動します。

Syntax

Parameters

exePath   _In_z_
型: char*
起動する新しいゲームのパスとファイル名。このパスは、現在のディレクトリからの相対パスまたは絶対パスのいずれかです。呼び出し元の実行可能ファイルへのパスを知る必要があるゲームは、モジュール ハンドルに nullptr を指定して GetModuleFileNameA を呼び出すことができます。 args   _In_opt_z_
型: char*
新しいゲームを起動する際に適用可能な、ゲーム固有の引数。 defaultUser   _In_opt_
型: XUserHandle
新しいゲームを起動するユーザーのハンドル。値が指定されていない場合は、現在のユーザーが 指定されます。

Return value

型: void この関数は、ゲームの再起動ができない場合でも、値を返したり例外を発生させたりしません。

Remarks

この関数は、タイム センシティブ スレッドから呼び出しても安全ではありません。詳細については、
Time-sensitive threads を参照してください。
この関数はゲームを再起動し、ゲームの現在のプロセスを終了して、新しいプロセスを使用してゲームを再起動します。ゲームは、ゲームが実行されている仮想マシンを 再起動することなく再起動されます。異なるデフォルト ユーザーと、ゲームを再起動するためのゲーム固有の引数を指定するオプションがあります。異なるデフォルト ユーザーを指定する方法の詳細については、User identity and XUser を参照してください。 現在のプロセスは、関数が新しいゲームの起動中にエラーが発生した場合でも、常に終了します。たとえば、exePathargs、または defaultUser に指定された値が無効な場合でも、 関数は値を返さず、例外も発生させません。
この関数が呼び出されると、以前にマウントされたすべての DLC は
アンマウントされます。ただし、XLaunchNewGame のターゲットをホストする DLC は例外です。G: ドライブは、新しく起動された EXE ではなく、引き続きベース パッケージのルートを指します。
XLaunchNewGame が呼び出された後、新しく起動されたゲームがサスペンド ハンドラーをセットアップする前にゲームがサスペンドされた場合、
ゲームは終了します。これは 非常に狭い時間ウィンドウであり、実際には非常にまれな事象になるはずです。
XMemTransferMemory (NDA topic) を使用してシステムに転送されたメモリは保持されます。

Requirements

ヘッダー: XGame.h ライブラリ: xgameruntime.lib サポートされているプラットフォーム: Windows、XBOX One ファミリー本体および XBOX Series 本体

Conceptual documentation

See also

XGame
User identity and XUser
XLaunchUri
最終更新日 2026年8月24日