> ## 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.

# GenerateStackDump

> IXtfConsoleControlClient::GenerateStackDump

# IXtfConsoleControlClient::GenerateStackDump

Gera um despejo de pilha.

## Sintaxe

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

### Parâmetros

*ProcessId*\
Tipo: UINT32

O identificador do processo para o qual criar o despejo de pilha.

*DumpType*\
Tipo: UINT32

O tipo de despejo de pilha a ser criado.  Os tipos de despejo válidos são:

| Valor | Descrição |
| - | - |
| 0 | Triagem |
| 1 | Mini |
| 2 | Heap |

*ImageName*\
Tipo: LPCWSTR

O nome da imagem.

*FilePath*\
Tipo: LPBSTR

Um ponteiro para uma cadeia de caracteres que recebe o caminho do arquivo de despejo de pilha criado.

### Valor retornado

Tipo: HRESULT

Retorna `S_OK` se for bem-sucedido; caso contrário, retorna um código de erro HRESULT. Se o tempo limite da função se esgotar enquanto aguarda a conclusão de um despejo de pilha, essa função retornará `E_MESSAGE_TIMED_OUT`.

## Comentários

Essa função gera um despejo de pilha de um processo especificado para uma imagem executável no console de desenvolvimento. O despejo de pilha é salvo como um arquivo na unidade de rascunho do console, no caminho de arquivo retornado em `FilePath`.

As informações capturadas pelo despejo de pilha, e o tempo necessário para capturá-las, dependem do tipo de despejo especificado em `DumpType`. O tempo limite dessa função se esgota após 5 minutos; se um despejo de pilha não for retornado pelo console antes que o tempo limite da função se esgote, essa função retornará `E_MESSAGE_TIMED_OUT`. A tabela a seguir descreve as informações retornadas por cada tipo de despejo de pilha.

| Tipo de despejo | Descrição |
| - | - |
| Triagem | Coleta rastreamentos de pilha de todos os threads, identificadores ativos do sistema operacional, informações de thread e informações sobre módulos descarregados. Os despejos de triagem são limpos de informações de identificação pessoal (PII). |
| Mini | Coleta segmentos de dados de todos os módulos carregados, dados relacionados a tokens de segurança, informações de thread e informações sobre os módulos descarregados. Os minidespejos não são limpos de PII. |
| Heap | Fornece um despejo de memória completo no modo de usuário de todos os processos e da memória em execução no Game OS. Embora essa opção forneça o máximo de informações, ela pode levar alguns minutos para gravar todos os dados. |

Para obter mais informações sobre as APIs de ferramentas e automação disponíveis, como o XBOX Tools Framework (XTF), confira [APIs de ferramentas e automação (tópico NDA)](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/debug/atoc-api-tools-dev-env).

### Manipulando ponteiros LPBSTR

Para obter mais informações sobre como manipular os ponteiros LPBSTR retornados por essa função, confira [Alocando e liberando memória para um BSTR](https://learn.microsoft.com/cpp/atl-mfc-shared/allocating-and-releasing-memory-for-a-bstr?view=vs-2019).

## Requisitos

**Cabeçalho:** xtfconsolecontrol.h

**Biblioteca:** xtfconsolecontrol.lib

**Plataformas com suporte:** Windows (para ferramentas de console XBOX)

## Confira também

[XtfConsoleControl](https://docs.xbox.com/pt-BR/reference/tools/xtf/xtfconsolecontrol/xtfconsolecontrol_members.md)\
[XBOX Tools Framework](https://docs.xbox.com/pt-BR/reference/tools/xtf/atoc-xbox-tools-framework.md)


## Related topics

- [IXtfConsoleControlClient (conteúdo da interface)](https://docs.xbox.com/pt-BR/reference/tools/xtf/xtfconsolecontrol/interfaces/IXtfConsoleControlClient/ixtfconsolecontrolclient.md)
- [SetWatsonDumpEnablement](https://docs.xbox.com/pt-BR/reference/graphics/d3d12/interfaces/id3d12deviceremovedextendeddatasettings/methods/id3d12deviceremovedextendeddatasettings_setwatsondumpenablement_public.md)
- [xbWatson](https://docs.xbox.com/pt-BR/tools/tools-console/xbWatson/xbwatson.md)
- [Página Crash data](https://docs.xbox.com/pt-BR/tools/tools-console/wdp/windows-device-portal-on-xbox-crash-data.md)
- [Criar índice de recursos do pacote (MakePRI.exe)](https://docs.xbox.com/pt-BR/build/core-features/common/packaging/deployment/makepri.md)
