PWINDBG_OUTPUT_ROUTINE Rückruffunktion (wdbgexts.h)
Die Rückruffunktion implementiert die Funktionalität zum Drucken einer formatierten Zeichenfolge im Debuggerbefehlsfenster.
Der wdbgexts.h-Header deklariert ein Makro, dprintf , das die formatierte Zeichenfolge ausgibt. Es funktioniert wie die C-Sprachroutine printf.
Syntax
PWINDBG_OUTPUT_ROUTINE PwindbgOutputRoutine;
void PwindbgOutputRoutine(
[in] PCSTR lpFormat,
[in] ... unnamedParam2
)
{...}
Parameter
[in] lpFormat
Gibt die Formatzeichenfolge an, wie in printf. Im Allgemeinen funktionieren Konvertierungszeichen genau wie in C. Für die Gleitkommakonvertierungszeichen wird das 64-Bit-Argument als 32-Bit-Gleitkommazahl interpretiert, es sei denn, der l-Modifizierer wird verwendet.
Das % p-Konvertierungszeichen wird unterstützt, stellt aber einen Zeiger im virtuellen Adressraum des Ziels dar. Es verfügt möglicherweise über keine Modifizierer und verwendet die interne Adressformatierung des Debuggers. Die folgenden zusätzlichen Konvertierungszeichen werden unterstützt:
Zeichen | Argumenttyp | Argument | Gedruckter Text |
---|---|---|---|
%p | ULONG64 | Zeiger im virtuellen Adressraum des Ziels | Der Wert des Zeigers. |
%N | DWORD_PTR (32 oder 64 Bits, abhängig von der Architektur des Hosts ) | Zeiger im virtuellen Adressraum des Hosts | Der Wert des Zeigers. (Dies entspricht dem standardmäßigen C %p-Zeichen .) |
%I | ULONG64 | Beliebiger 64-Bit-Wert | Der angegebene Wert. Wenn diese größer als 0xFFFFFFFF wird sie als 64-Bit-Adresse ausgegeben, andernfalls wird sie als 32-Bit-Adresse ausgegeben. |
%ma | ULONG64 | Adresse einer MIT NULL beendeten ASCII-Zeichenfolge im virtuellen Adressraum des Ziels | Die angegebene Zeichenfolge. |
%mu | ULONG64 | Adresse einer MIT NULL beendeten Unicode-Zeichenfolge im virtuellen Adressraum des Ziels | Die angegebene Zeichenfolge. |
%msa | ULONG64 | Adresse einer ANSI_STRING-Struktur im virtuellen Adressraum des Ziels | Die angegebene Zeichenfolge. |
%msu | ULONG64 | Adresse einer UNICODE_STRING-Struktur im virtuellen Adressraum des Ziels | Die angegebene Zeichenfolge. |
%y | ULONG64 | Adresse eines Debuggersymbols im virtuellen Adressraum des Ziels | Zeichenfolge, die den Namen des angegebenen Symbols (und ggf. Verschiebung) enthält. |
%ly | ULONG64 | Adresse eines Debuggersymbols im virtuellen Adressraum des Ziels | Zeichenfolge, die den Namen des angegebenen Symbols (und ggf. Verschiebung) sowie alle verfügbaren Quellzeileninformationen enthält. |
[in] unnamedParam2
[arguments] – Gibt Argumente für die Formatzeichenfolge an, wie in printf. Die Anzahl der angegebenen Argumente sollte mit der Anzahl der Konvertierungszeichen in FormatString übereinstimmen. Jedes Argument ist ein Ausdruck, der vom Standardauswertungsauswerter (MASM oder C++) ausgewertet wird. Weitere Informationen finden Sie unter Syntax für numerische Ausdrücke.
Rückgabewert
Keine
Bemerkungen
Beim Generieren sehr großer Ausgabezeichenfolgen können die Grenzen der Debugger-Engine oder des Betriebssystems erreicht werden. Beispielsweise weisen einige Versionen der Debugger-Engine eine Zeichenbeschränkung von 16K für ein einzelnes Ausgabestück auf. Wenn Sie feststellen, dass sehr große Ausgaben abgeschnitten werden, müssen Sie die Ausgabe möglicherweise in mehrere Anforderungen aufteilen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | wdbgexts.h (include Wdbgexts.h, Dbgeng.h) |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für