> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# DebugEnable

> IXtfApplicationClient::DebugEnable

# IXtfApplicationClient::DebugEnable

指定したパッケージ モニカーを持つアプリ パッケージのデバッグを有効または無効にします。

## 構文

```cpp theme={null}
public:
HRESULT DebugEnable(
         LPCWSTR pszPackageMoniker,
         BOOL fEnable
)  
```

### パラメーター

*pszPackageMoniker*\
型: LPCWSTR

アプリのパッケージ モニカーへのポインターです。

*fEnable*\
型: BOOL

デバッグを有効にする場合は TRUE を、無効にする場合は FALSE を指定します。

### 戻り値

型: HRESULT

成功した場合は `S_OK` を返します。それ以外の場合は HRESULT エラー コードを返します。

## 解説

> [!NOTE]
>
> このメソッドは XBOX One Software Development Kit\ERA タイトルのみに適用されます。 このメソッドを呼び出しても、Microsoft Game Development Kit (GDK) タイトルには影響しません。

このメソッドは、`pszPackageMoniker` で指定されたパッケージ モニカーを持つアプリ パッケージのデバッグを有効または無効にし、そのパッケージのデバッグ フラグをそれぞれ設定またはクリアします。

> [!NOTE]
>
> パッケージのデバッグ フラグは、そのパッケージが実行されていないときにのみ設定してください。 実行中のパッケージにデバッグ フラグを設定すると、予測できない結果になる可能性があります。

アプリ パッケージのデバッグ フラグを設定すると、そのアプリ パッケージのすべてのアプリに対して次の効果があります。

* アクティブ化の完了に 45 秒を超えても、アプリは終了されません。
* 中断に時間がかかりすぎても、アプリは終了されません。 制限時間は、排他アプリの場合は 1 秒、共有アプリの場合は 5 秒です。
* 可視性を失ってから長時間経過しても、アプリは中断されません。 制限時間は、排他アプリの場合は 10 分、共有アプリの場合は 5 秒です。
* アプリを中断するには、[xbapp suspend (NDA トピック)](https://docs.xbox.com/ja-jp/tools/tools-console/commandlinetools/xbapp.md#xbapp_suspend) コマンドを呼び出すか、[IXtfApplicationClient::Suspend](https://docs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/suspend-ixtfapplicationclient-xtfapplication-xbox-windows.md) 関数を呼び出します。
* アプリがデバッグ モードのときは、通常のプロセス ライフタイム管理 (PLM) の制限を受けず、XBOX Tools Framework (XTF) ツールを使用して指示した場合にのみ中断または再開されます。

> [!NOTE]
>
> デバッグ モードでは、アプリが表示されているときなど、通常の PLM プロセスでは中断されない状態でも、アプリを中断できます。 アプリがデバッグ モードで実行されているときに中断と再開の動作をテストする場合は、デバッグ モードで実行される効果ではなく、通常の動作をテストしていることを確認するために注意してください。

アプリ パッケージのデバッグ フラグをクリアすると、そのアプリ パッケージのアプリに対して次の効果があります。

* アクティブ化の完了に 45 秒を超えると、アプリは終了されます。
* 中断に時間がかかりすぎると、アプリは終了されます。 制限時間は、排他アプリの場合は 1 秒、共有アプリの場合は 5 秒です。
* 可視性を失ってから長時間経過すると、アプリは中断されます。 制限時間は、排他アプリの場合は 10 分、共有アプリの場合は 5 秒です。

デバッグ フラグの状態は、パッケージ全体に適用されます。 デバッグ フラグが設定された 1 つのパッケージに複数のアプリがある場合、すべてのアプリがデバッグ モードで実行されます。

開発キットを再起動すると、デバッグ フラグはクリアされます。

Visual Studio から F5 キーを押して (**\[デバッグ] > \[デバッグの開始]**) デバッガーをアプリ プロセスにアタッチした状態でアプリを実行すると、アプリの実行前にデバッグ フラグが自動的に設定され、アプリの終了後にフラグがクリアされます。 Ctrl+F5 キーを押して (**\[デバッグ] > \[デバッグなしで開始]**) デバッガーをアプリ プロセスにアタッチせずにアプリを実行すると、アプリの実行前にデバッグ フラグがクリアされ、アプリの終了後もフラグはクリアされたままになります。 アプリがデバッグ モードでクラッシュし、Visual Studio がアプリにアタッチされている場合、Visual Studio はアプリから切断されるときにデバッグ フラグをクリアします。

次の状況では、デバッグ フラグの状態は設定されたままになります。

* アプリがクラッシュした場合 (その時点で Visual Studio デバッガーがアタッチされていない限り)。
* 中断と再開の操作を通じて。
* 終了を通じて (その時点で Visual Studio デバッガーがアタッチされていない限り)。

ゲームのライフサイクル状態の詳細については、[XBOX ゲーム ライフサイクル (NDA トピック)](https://docs.xbox.com/ja-jp/build/console-features/console-workflows/xbox-game-life-cycle.md) を参照してください。

## 要件

**ヘッダー:** xtfapplication.h

**ライブラリ:** xtfapplication.lib

**サポートされているプラットフォーム:** Windows (XBOX 本体ツール用)

## 関連項目

[IXtfApplicationClient](https://docs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/ixtfapplicationclient-xtfapplication-xbox-microsoft-t.md)\
[XtfApplication](https://docs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/xtfapplication-xbox-microsoft-n.md)


## Related topics

- [Suspend](https://docs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/suspend-ixtfapplicationclient-xtfapplication-xbox-windows.md)
- [IXtfApplicationClient インターフェイス (インターフェイスの内容)](https://docs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/ixtfapplicationclient-xtfapplication-xbox-microsoft-t.md)
- [D3D12EnableExperimentalFeatures](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/functions/d3d12enableexperimentalfeatures_public.md)
- [DSTORAGE_DEBUG](https://docs.xbox.com/ja-jp/reference/system/dstorage/enums/dstorage_debug.md)
- [XInputEnable](https://docs.xbox.com/ja-jp/reference/input/xinputongameinput/functions/xinputenable.md)
