IDebugControl4::OutputContextStackTrace-Methode (dbgeng.h)
Die OutputContextStackTrace-Methode gibt die Aufrufliste aus, die durch ein Array von Stapelrahmen und den entsprechenden Registerkontexten angegeben wird.
Syntax
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
);
Parameter
[in] OutputControl
Gibt an, wohin die Ausgabe gesendet werden soll. Mögliche Werte finden Sie unter DEBUG_OUTCTL_XXX.
[in] Frames
Gibt das Array der auszugebenden Stapelrahmen an. Die Anzahl der Elemente in diesem Array ist FramesSize. Wenn FramesNULL ist, wird der aktuelle Stapelrahmen verwendet.
[in] FramesSize
Gibt die Anzahl der auszugebenden Frames an.
[in] FrameContexts
Gibt den Registrierungskontext für jeden Frame im Stapel an. Die Einträge in diesem Array entsprechen den Einträgen im Frames-Array . Der Typ des Threadkontexts ist die CONTEXT-Struktur für den effektiven Prozessor des Ziels.
[in] FrameContextsSize
Gibt die Größe des Speichers in Bytes an, auf den FrameContexts verweist. Die Anzahl der Stapelrahmen muss der Anzahl von Kontexten entsprechen, und FrameContextsSize muss framesSize multipliziert mit FrameContextsEntrySize entsprechen.
[in] FrameContextsEntrySize
Gibt die Größe jedes Framekontexts in FrameContexts in Bytes an.
[in] Flags
Gibt Bitflags an, die bestimmen, welche Informationen für jeden Frame ausgegeben werden sollen. Flags können eine beliebige Kombination von Werten aus der folgenden Tabelle sein.
Flag | Beschreibung |
---|---|
DEBUG_STACK_ARGUMENTS | Zeigt die ersten drei Stapelspeicherelemente im Rahmen jedes Aufrufs an. Auf Plattformen, auf denen Argumente für den Stapel übergeben werden und der Code für den Frame Stapelargumente verwendet, sind diese Werte die Argumente für die Funktion. |
DEBUG_STACK_FUNCTION_INFO | Zeigt Informationen zur Funktion an, die dem Frame entspricht. Dazu gehören Aufrufkonventions- und Framepointer-Auslassungsinformationen (FPO). |
DEBUG_STACK_SOURCE_LINE | Zeigt Quellzeileninformationen für jeden Frame der Stapelüberwachung an. |
DEBUG_STACK_FRAME_ADDRESSES | Zeigt die Rückgabeadresse, die vorherige Frameadresse und andere relevante Adressen für jeden Frame an. |
DEBUG_STACK_COLUMN_NAMES | Zeigt Spaltennamen an. |
DEBUG_STACK_NONVOLATILE_REGISTERS | Zeigt den nicht flüchtigen Registerkontext für jeden Frame an. Dies ist nur für einige Plattformen sinnvoll. |
DEBUG_STACK_FRAME_NUMBERS | Zeigt Framenummern an. |
DEBUG_STACK_PARAMETERS | Zeigt Parameternamen und -werte an, wie in Symbolinformationen angegeben. |
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY | Zeigt nur die Rückgabeadresse in den Stapelrahmenadressen an. |
DEBUG_STACK_FRAME_MEMORY_USAGE | Zeigt die Anzahl der Bytes an, die die Frames trennen. |
DEBUG_STACK_PARAMETERS_NEWLINE | Zeigt jeden Parameter sowie seinen Typ und Wert in einer neuen Zeile an. |
Rückgabewert
Diese Methode gibt möglicherweise auch Fehlerwerte zurück. Weitere Informationen finden Sie unter Rückgabewerte .
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode war erfolgreich. |
Hinweise
Das Array von Stapelframes kann mit GetContextStackTrace abgerufen werden.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | dbgeng.h (include Dbgeng.h, Ntddk.h) |