IXtfApplicationClient::DebugEnable
指定されたパッケージ モニカーを持つアプリ パッケージのデバッグを有効または無効にします。
構文
public:
HRESULT DebugEnable(
LPCWSTR pszPackageMoniker,
BOOL fEnable
)
パラメーター
pszPackageMoniker
型: LPCWSTR
アプリのパッケージ モニカーへのポインター。
fEnable
型: BOOL
デバッグを有効にするには TRUE を指定し、デバッグを無効にするには FALSE を指定します。
戻り値
型: HRESULT
正常に実行された場合は S_OK
を返し、失敗した場合は HRESULT エラー コードを返します。
解説
注意
この方法は、Xbox One ソフトウェア開発キット\ERA タイトルにのみ適用されます。 このメソッドを呼び出しても、Microsoft Game Development Kit (GDK) のタイトルには影響しません。
このメソッドでは、pszPackageMoniker
で指定したモニカー パッケージを使用したアプリ パッケージのデバッグを有効化または無効化します (そのパッケージのデバッグ フラグを設定またはクリアします)。
注意
パッケージのデバッグ フラグは、パッケージが実行中でないときにのみ設定してください。 実行中のパッケージのデバッグ フラグを設定すると、予期しない結果になる可能性があります。
アプリ パッケージのデバッグ フラグを設定すると、そのアプリ パッケージ内のすべてのアプリに次のような影響を与えます。
- アクティベーションの完了に 45 秒より長くかかる場合に、アプリは終了されません。
- 一時停止に時間がかかりすぎる場合に、アプリは終了されません。 制限値は、排他的アプリの場合は 1 秒、共有アプリの場合は 5 秒です。
- 長時間にわたって可視性を失った後に、アプリは一時停止されません。 制限値は、排他的アプリの場合は 10 分、共有アプリの場合は 5 秒です。
- アプリを一時停止するには、xbapp suspend (NDA トピック)認可が必須です コマンドを呼び出すか、IXtfApplicationClient::Suspend 関数を呼び出します。
- アプリがデバッグ モードのときに、そのアプリは通常のプロセス ライフタイム管理の制限 (PLM) の対象外になり、Xbox Tools Framework (XTF) ツールを使用して指示した場合にのみ一時停止または再開されます。
注意
デバッグ モードでは、通常の PLM プロセスでは一時停止されない状態のとき (可視状態のときなど) に、アプリを一時停止できます。 デバッグ モードでアプリを実行しているときに一時停止と再開の動作をテストする場合は十分に注意して、デバッグ モードで実行しているときの影響ではなく、通常の動作をテストしていることを確認してください。
アプリ パッケージのデバッグ フラグをクリアすると、そのアプリ パッケージ内のアプリに次のような影響を与えます。
- アクティベーションの完了に 45 秒より長くかかる場合に、アプリは終了されます。
- 一時停止に時間がかかりすぎる場合に、アプリは終了されます。 制限値は、排他的アプリの場合は 1 秒、共有アプリの場合は 5 秒です。
- 長時間にわたって可視性を失った後に、アプリは一時停止されます。 制限値は、排他的アプリの場合は 10 分、共有アプリの場合は 5 秒です。
デバッグ フラグの状態は、パッケージ全体で適用されます。 1 つのパッケージに複数のアプリがある場合にデバッグ フラグを設定すると、すべてのアプリがデバッグ モードで動作します。
開発キットを再起動すると、デバッグ フラグはクリアされます。
F5 キー (デバッグ > デバッグの開始 )を押して、アプリプロセスにアタッチされたデバッガーを使用してVisual Studioからアプリを実行すると、アプリの実行前にデバッグ フラグが自動的に設定され、アプリの終了後にフラグがクリアされます。 デバッガーをアプリ プロセスにアタッチせずにアプリを実行するには、Ctrl キーを押しながら F5 キー (デバッグ > デバッグなしで開始 を) キーを押すと、アプリが実行される前にデバッグ フラグがクリアされ、アプリが終了した後もフラグはクリアされたままになります。 デバッグ モードでアプリがクラッシュしたときに、そのアプリに Visual Studio がアタッチされていると、デバッグ フラグは Visual Studio がアプリからデタッチされるときにクリアされます。
次の状況では、デバッグ フラグは設定されたままになります。
- アプリがクラッシュしたとき (その時点で Visual Studio デバッガーがアタッチされていない場合)。
- 一時停止と再開の操作時。
- 終了時 (その時点で Visual Studio デバッガーがアタッチされていない場合)。
ゲーム ライフサイクルの状態について詳しくは、「Xbox ゲーム ライフサイクル (NDA トピック)認可が必須です」を参照してください。
要件
ヘッダー: xtfapplication.h
ライブラリ: xtfapplication.lib
サポートされているプラットフォーム: Windows (Xbox 本体ツール用)