Partager via


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

La méthode OutputContextStackTrace imprime la pile des appels spécifiée par un tableau de cadres de pile et les contextes de registre correspondants.

Syntaxe

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
);

Paramètres

[in] OutputControl

Spécifie où envoyer la sortie. Pour connaître les valeurs possibles, consultez DEBUG_OUTCTL_XXX.

[in] Frames

Spécifie le tableau d’images de pile à générer. Le nombre d’éléments dans ce tableau est FramesSize. Si Frames a la valeur NULL, l’image de pile actuelle est utilisée.

[in] FramesSize

Spécifie le nombre d’images à sortir.

[in] FrameContexts

Spécifie le contexte de registre pour chaque image de la pile. Les entrées de ce tableau correspondent aux entrées du tableau Frames . Le type du contexte de thread est la structure CONTEXT du processeur effectif de la cible.

[in] FrameContextsSize

Spécifie la taille, en octets, de la mémoire pointée par FrameContexts. Le nombre d’images de pile doit être égal au nombre de contextes, et FrameContextsSize doit être égal à FramesSize multiplié par FrameContextsEntrySize.

[in] FrameContextsEntrySize

Spécifie la taille, en octets, de chaque contexte d’image dans FrameContexts.

[in] Flags

Spécifie les indicateurs de bits qui déterminent les informations à générer pour chaque image. Les indicateurs peuvent être n’importe quelle combinaison de valeurs du tableau suivant.

Indicateur Description
DEBUG_STACK_ARGUMENTS Affiche les trois premiers morceaux de mémoire de pile dans le cadre de chaque appel. Sur les plateformes où les arguments sont transmis sur la pile et où le code du frame utilise des arguments de pile, ces valeurs seront les arguments de la fonction.
DEBUG_STACK_FUNCTION_INFO Affiche des informations sur la fonction qui correspond au cadre. Cela inclut les informations relatives à la convention d’appel et à l’omission de pointeur d’image (FPO).
DEBUG_STACK_SOURCE_LINE Affiche les informations de ligne source pour chaque image de la trace de pile.
DEBUG_STACK_FRAME_ADDRESSES Affiche l’adresse de retour, l’adresse de trame précédente et d’autres adresses pertinentes pour chaque image.
DEBUG_STACK_COLUMN_NAMES Affiche les noms de colonnes.
DEBUG_STACK_NONVOLATILE_REGISTERS Affiche le contexte de registre non volatile pour chaque image. Cela n’est significatif que pour certaines plateformes.
DEBUG_STACK_FRAME_NUMBERS Affiche les numéros de trame.
DEBUG_STACK_PARAMETERS Affiche les noms et les valeurs des paramètres comme indiqué dans les informations de symbole.
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY Affiche uniquement l’adresse de retour dans les adresses de trame de pile.
DEBUG_STACK_FRAME_MEMORY_USAGE Affiche le nombre d’octets qui séparent les images.
DEBUG_STACK_PARAMETERS_NEWLINE Affiche chaque paramètre, son type et sa valeur sur une nouvelle ligne.

Valeur retournée

Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour .

Code de retour Description
S_OK
La méthode a réussi.

Remarques

Le tableau d’images de pile peut être obtenu à l’aide de GetContextStackTrace.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête dbgeng.h (inclure Dbgeng.h, Ntddk.h)

Voir aussi

GetContextStackTrace

IDebugControl4

OutputStackTrace

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