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

# IXtfConsoleControlClient::GenerateStackDump

> IXtfConsoleControlClient::GenerateStackDump

# IXtfConsoleControlClient::GenerateStackDump

スタック ダンプを生成します。

<a id="syntaxSection" />

## 構文

```cpp theme={null}
HRESULT GenerateStackDump(
         UINT32 ProcessId,
         UINT32 DumpType,
         LPCWSTR ImageName,
         LPBSTR FilePath  
)  
```

<a id="parametersSection" />

### パラメーター

*ProcessId*\
型: UINT32

スタック ダンプの作成対象となるプロセスの識別子です。

*DumpType*\
型: UINT32

作成するスタック ダンプの種類です。有効なダンプの種類は次のとおりです。

| 値 | 説明     |
| - | ------ |
| 0 | Triage |
| 1 | Mini   |
| 2 | Heap   |

*ImageName*\
型: LPCWSTR

イメージの名前です。

*FilePath*\
型: LPBSTR

作成されたスタック ダンプ ファイルへのファイル パスを受け取る文字列へのポインターです。

<a id="retvalSection" />

### 戻り値

型: HRESULT

成功した場合は `S_OK` を返します。それ以外の場合は HRESULT エラー コードを返します。関数がスタック ダンプの完了を待機してタイムアウトした場合、この関数は `E_MESSAGE_TIMED_OUT` を返します。

<a id="remarksSection" />

## 解説

この関数は、開発コンソール上の実行可能イメージについて、指定したプロセスからスタック ダンプを生成します。スタック ダンプは、コンソールのスクラッチ ドライブ上に、`FilePath` で返されるファイル パスにファイルとして保存されます。

スタック ダンプによって取得される情報と、その情報の取得にかかる時間は、`DumpType` で指定するダンプの種類によって異なります。この関数は 5 分後にタイムアウトします。関数がタイムアウトする前にコンソールからスタック ダンプが返されなかった場合、この関数は `E_MESSAGE_TIMED_OUT` を返します。次の表に、各スタック ダンプの種類で返される情報を示します。

| ダンプの種類 | 説明                                                                                                        |
| ------ | --------------------------------------------------------------------------------------------------------- |
| Triage | すべてのスレッドのスタック トレース、アクティブな OS ハンドル、スレッド情報、およびアンロードされたモジュールの情報を収集します。Triage ダンプでは、個人を識別できる情報 (PII) が除去されます。 |
| Mini   | 読み込まれたすべてのモジュールのデータ セグメント、セキュリティ トークン関連のデータ、スレッド情報、およびアンロードされたモジュールの情報を収集します。Mini ダンプでは PII は除去されません。     |
| Heap   | Game OS 上で実行中のすべてのプロセスとメモリの完全なユーザー モード クラッシュ ダンプを提供します。このオプションは最も多くの情報を提供しますが、すべてのデータを書き出すのに数分かかる場合があります。 |

XBOX Tools Framework (XTF) などの利用可能なツールおよび自動化 API の詳細については、[Tool and automation APIs (NDA topic)](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/debug/atoc-api-tools-dev-env) を参照してください。

<a id="remarks_output" />

### LPBSTR ポインターの取り扱い

この関数が返す LPBSTR ポインターの取り扱いについては、[Allocating and Releasing Memory for a BSTR](https://learn.microsoft.com/cpp/atl-mfc-shared/allocating-and-releasing-memory-for-a-bstr?view=vs-2019) を参照してください。

<a id="requirementsSection" />

## 要件

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

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

**サポートされるプラットフォーム:** Windows (XBOX コンソール ツール用)

<a id="seealsoSection" />

## 関連項目

[XtfConsoleControl](/reference/tools/xtf/xtfconsolecontrol/xtfconsolecontrol_members)\
[XBOX Tools Framework](/reference/tools/xtf/atoc-xbox-tools-framework)
