Compartilhar via


Método IDebugControl4::OutputContextStackTrace (dbgeng.h)

O método OutputContextStackTrace imprime a pilha de chamadas especificada por uma matriz de quadros de pilha e contextos de registro correspondentes.

Sintaxe

HRESULT OutputContextStackTrace(
  [in] ULONG              OutputControl,
  [in] PDEBUG_STACK_FRAME Frames,
  [in] ULONG              FramesSize,
  [in] PVOID              FrameContexts,
  [in] ULONG              FrameContextsSize,
  [in] ULONG              FrameContextsEntrySize,
  [in] ULONG              Flags
);

Parâmetros

[in] OutputControl

Especifica para onde enviar a saída. Para obter valores possíveis, consulte DEBUG_OUTCTL_XXX.

[in] Frames

Especifica a matriz de quadros de pilha para saída. O número de elementos nessa matriz é FramesSize. Se Quadros for NULL, o quadro de pilha atual será usado.

[in] FramesSize

Especifica o número de quadros a serem gerados.

[in] FrameContexts

Especifica o contexto de registro para cada quadro na pilha. As entradas nessa matriz correspondem às entradas na matriz quadros. O tipo do contexto de thread é a estrutura CONTEXT para o processador efetivo do destino.

[in] FrameContextsSize

Especifica o tamanho, em bytes, da memória apontada por FrameContexts. O número de quadros de pilha deve ser igual ao número de contextos e FrameContextsSize deve ser igual FramesSize multiplicado por FrameContextsEntrySize.

[in] FrameContextsEntrySize

Especifica o tamanho, em bytes, de cada contexto de quadro em FrameContexts.

[in] Flags

Especifica sinalizadores de bits que determinam quais informações serão geradas para cada quadro. Flags pode ser qualquer combinação de valores da tabela a seguir.

Bandeira Descrição
DEBUG_STACK_ARGUMENTS Exibe as três primeiras partes de memória de pilha no quadro de cada chamada. Em plataformas em que os argumentos são passados na pilha e o código do quadro usa argumentos de pilha, esses valores serão os argumentos para a função.
DEBUG_STACK_FUNCTION_INFO Exibe informações sobre a função que corresponde ao quadro. Isso inclui informações de convenção de chamada e FPO (omissão de ponteiro de quadro).
DEBUG_STACK_SOURCE_LINE Exibe informações de linha de origem para cada quadro do rastreamento de pilha.
DEBUG_STACK_FRAME_ADDRESSES Exibe o endereço de retorno, o endereço do quadro anterior e outros endereços relevantes para cada quadro.
DEBUG_STACK_COLUMN_NAMES Exibe nomes de coluna.
DEBUG_STACK_NONVOLATILE_REGISTERS Exibe o contexto de registro não volátil para cada quadro. Isso só é significativo para algumas plataformas.
DEBUG_STACK_FRAME_NUMBERS Exibe números de quadro.
DEBUG_STACK_PARAMETERS Exibe nomes e valores de parâmetros conforme fornecido nas informações de símbolo.
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY Exibe apenas o endereço de retorno nos endereços do quadro de pilha.
DEBUG_STACK_FRAME_MEMORY_USAGE Exibe o número de bytes que separam os quadros.
DEBUG_STACK_PARAMETERS_NEWLINE Exibe cada parâmetro e seu tipo e valor em uma nova linha.

Valor de retorno

Esse método também pode retornar valores de erro. Consulte de Valores Retornados para obter mais detalhes.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.

Observações

A matriz de quadros de pilha pode ser obtida usando GetContextStackTrace.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho dbgeng.h (inclua Dbgeng.h, Ntddk.h)

Consulte também

GetContextStackTrace

IDebugControl4

OutputStackTrace

k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace)