Compartir a través de


Método IDebugControl5::OutputContextStackTraceEx (dbgeng.h)

El método OutputContextStackTraceEx imprime la pila de llamadas especificada por una matriz de marcos de pila y los contextos de registro correspondientes. El método OutputContextStackTraceEx proporciona compatibilidad con fotogramas insertados. Para obtener más información sobre cómo trabajar con funciones insertadas, vea Depuración de código optimizado y funciones insertadas.

Sintaxis

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

Parámetros

[in] OutputControl

Especifica dónde enviar la salida. Para conocer los valores posibles, consulte DEBUG_OUTCTL_XXX.

[in] Frames

Especifica la matriz de marcos de pila que se van a generar. El número de elementos de esta matriz es FramesSize. Si Frames es NULL, se usa el marco de pila actual.

[in] FramesSize

Especifica el número de fotogramas que se van a generar.

[in] FrameContexts

Especifica el contexto de registro de cada fotograma de la pila. Las entradas de esta matriz corresponden a las entradas de la matriz Frames . El tipo del contexto del subproceso es la estructura CONTEXT del procesador efectivo del destino.

[in] FrameContextsSize

Especifica el tamaño, en bytes, de la memoria a la que apunta FrameContexts. El número de marcos de pila debe ser igual al número de contextos y FrameContextsSize debe ser igual a FramesSize multiplicado por FrameContextsEntrySize.

[in] FrameContextsEntrySize

Especifica el tamaño, en bytes, de cada contexto de marco en FrameContexts.

[in] Flags

Especifica marcas de bits que determinan qué información se va a generar para cada fotograma. Las marcas pueden ser cualquier combinación de valores de la tabla siguiente.

Marca Descripción
DEBUG_STACK_ARGUMENTS Muestra los tres primeros fragmentos de memoria de pila en el marco de cada llamada. En plataformas donde se pasan argumentos en la pila y el código del marco usa argumentos de pila, estos valores serán los argumentos de la función.
DEBUG_STACK_FUNCTION_INFO Muestra información sobre la función que corresponde al marco. Esto incluye la convención de llamada y la información de omisión del puntero de marco (FPO).
DEBUG_STACK_SOURCE_LINE Muestra información de línea de origen para cada fotograma del seguimiento de pila.
DEBUG_STACK_FRAME_ADDRESSES Muestra la dirección de retorno, la dirección de marco anterior y otras direcciones pertinentes para cada fotograma.
DEBUG_STACK_COLUMN_NAMES Muestra los nombres de columna.
DEBUG_STACK_NONVOLATILE_REGISTERS Muestra el contexto de registro no volátil para cada fotograma. Esto solo es significativo para algunas plataformas.
DEBUG_STACK_FRAME_NUMBERS Muestra los números de fotograma.
DEBUG_STACK_PARAMETERS Muestra los nombres de parámetro y los valores según se indica en la información de símbolos.
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY Muestra solo la dirección de retorno en las direcciones del marco de pila.
DEBUG_STACK_FRAME_MEMORY_USAGE Muestra el número de bytes que separan los marcos.
DEBUG_STACK_PARAMETERS_NEWLINE Muestra cada parámetro y su tipo y valor en una nueva línea.

Valor devuelto

Este método también puede devolver valores de error. Consulte Valores devueltos para obtener más detalles.

Código devuelto Descripción
S_OK
Método realizado correctamente.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado dbgeng.h

Consulte también

IDebugControl5