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