Freigeben über


.printf

Das PRINTF-Token verhält sich wie die printf-Anweisung in C.

.printf [/D] [Option] "FormatString" [, Argument , ...] 

Syntax-Elemente

/D
Gibt an, dass die Formatzeichenfolge Debugger Markup Language (DML) enthält.

Option
(Nur WinDbg) Gibt den Typ der Textnachricht an, die WinDbg als FormatString interpretieren soll. WinDbg weist jedem Typ von Debuggerbefehlsfenster eine Hintergrund- und Textfarbe zu; Wenn Sie eine dieser Optionen auswählen, wird die Meldung in den entsprechenden Farben angezeigt. Standardmäßig wird der Text als Meldung auf normaler Ebene angezeigt.

Die folgenden Optionen sind verfügbar.

Option Typ der Nachricht Titel der Farben im Dialogfeld "Optionen"

/od

debuggee

Befehlsfenster auf Debuggeeebene

/Od

Debuggee-Eingabeaufforderung

Eingabeaufforderungsfenster auf Debuggee-Eingabeaufforderungsebene

error

Befehlsfenster auf Fehlerebene

/on

normal

Befehlsfenster der normalen Ebene

/op

prompt

Befehlsfenster der Eingabeaufforderungsebene

/Op

Eingabeaufforderungsregister

Eingabeaufforderung registriert Befehlsfenster auf Ebene

/os

symbols

Befehlsfenster auf Symbolnachrichtenebene

/Ov

Ausführlich

Ausführliches Befehlsfenster auf Ebene

/Ow

Warnung laden

Befehlsfenster auf Warnungsebene

FormatString
Gibt die Formatzeichenfolge wie in printf an. 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.

Der Modifizierer "I64" kann hinzugefügt werden, um anzugeben, dass ein Wert als 64-Bit interpretiert werden soll. Beispielsweise kann "%I64x" verwendet werden, um eine 64-Bit-Hexadezimalzahl zu drucken.

Das Konvertierungszeichen %p wird unterstützt, stellt jedoch einen Zeiger im virtuellen Adressbereich des Ziels dar. Er darf keine Modifizierer haben und die interne Adressformatierung des Debuggers verwendet. Zusätzlich zu den standardmäßigen Printf-Formatformatbezeichnern werden die folgenden zusätzlichen Konvertierungszeichen unterstützt.

Zeichen Argumenttyp Argument Gedruckter Text

%p

ULONG64

Ein Zeiger im virtuellen Adressbereich des Ziels.

Der Wert des Zeigers.

%N

DWORD_PTR (32 oder 64 Bit, abhängig von der Architektur des Hosts)

Ein Zeiger im virtuellen Adressbereich des Hosts.

Der Wert des Zeigers. (Dies entspricht dem standardmäßigen C %p-Zeichen.)

%ma

ULONG64

Die Adresse einer MIT NULL beendeten ASCII-Zeichenfolge im virtuellen Adressraum des Ziels.

Die angegebene Zeichenfolge.

%mu

ULONG64

Die Adresse einer MIT NULL beendeten Unicode-Zeichenfolge im virtuellen Adressraum des Ziels.

Die angegebene Zeichenfolge.

%msa

ULONG64

Die Adresse einer ANSI_STRING Struktur im virtuellen Adressraum des Ziels.

Die angegebene Zeichenfolge.

%msu

ULONG64

Die Adresse einer UNICODE_STRING Struktur im virtuellen Adressraum des Ziels.

Die angegebene Zeichenfolge.

%y

ULONG64

Die Adresse eines Debuggersymbols im virtuellen Adressraum des Ziels.

Eine Zeichenfolge mit dem Namen des angegebenen Symbols (und Verschiebung, falls vorhanden).

%ly

ULONG64

Die Adresse eines Debuggersymbols im virtuellen Adressraum des Ziels.

Eine Zeichenfolge, die den Namen des angegebenen Symbols (und Verschiebung, falls vorhanden) sowie alle verfügbaren Quellzeileninformationen enthält.

Argumente
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 Standardausdruck-Evaluator (MASM oder C++) ausgewertet wird. Einzelheiten finden Sie unter Syntax für numerische Ausdrücke.

Zusätzliche Informationen

Informationen über andere Kontrollfluss-Token und ihre Verwendung in Debugger-Befehlsprogrammen finden Sie unter Verwendung von Debugger-Befehlsprogrammen.

Hinweise

Die Farbeinstellungen, die Sie mit dem Parameter "Options " auswählen können, sind standardmäßig alle auf schwarzen Text auf weißem Hintergrund festgelegt. Um diese Optionen optimal nutzen zu können, müssen Sie zuerst "Ansicht" | verwenden . Optionen zum Öffnen des Dialogfelds "Optionen " und Ändern der Farbeinstellungen für Debuggerbefehlsfenstermeldungen.

Das folgende Beispiel zeigt, wie Sie ein DML-Tag in die Formatzeichenfolge einschließen.

.printf /D "Click <link cmd=\".chain /D\">here</link> to see extensions DLLs."

Screenshot des DML-Links im Befehlsbrowserfenster.

Die in der vorherigen Abbildung gezeigte Ausgabe weist einen Link auf, auf den Sie klicken können, um den im <link> Tag angegebenen Befehl auszuführen. Die folgende Abbildung zeigt das Ergebnis des Klickens auf den Link.

Screenshot der DML-Ausgabe im Befehlsbrowserfenster.

Informationen zu DML-Tags finden Sie unter dml.doc im Installationsordner für Debugtools für Windows.