t (Trace)
Der Befehl t führt eine einzelne Anweisung oder Quellzeile aus und zeigt optional die resultierenden Werte aller Register und Merker an. Wenn Unterprogrammaufrufe oder Unterbrechungen auftreten, wird jeder ihrer Schritte ebenfalls aufgezeichnet.
Benutzermodus
[~Thread] t [r] [= StartAddress] [Count] ["Command"]
Kernelmodus
t [r] [= StartAddress] [Count] ["Command"]
Parameter
Faden
Gibt Threads zum Freigeben an. Alle anderen Threads sind fixiert. Weitere Informationen zu dieser Syntax finden Sie unter Thread-Syntax. Sie können Threads nur im Benutzermodus angeben.
r
Schaltet die Anzeige von Registern und Flags ein und aus. Standardmäßig werden die Register und Flags angezeigt. Sie können die Registeranzeige mit den Befehlen pr, tr oder .prompt_allow -reg deaktivieren. Alle drei Befehle steuern dieselbe Einstellung, und Sie können jeden dieser Befehle verwenden, um eine vorherige Verwendung dieser Befehle außer Kraft zu setzen.
Sie können die Registeranzeige auch mit dem Befehl l-os deaktivieren. Diese Einstellung ist unabhängig von den anderen drei Befehlen. Um zu steuern, welche Register und Merker angezeigt werden, verwenden Sie den Befehl rm (Register Mask).
StartAddress
Gibt die Adresse an, an der die Ausführung beginnen soll. Wenn Sie StartAddress nicht verwenden, beginnt die Ausführung mit dem Befehl, auf den der Befehlszeiger zeigt. Weitere Informationen zur Syntax finden Sie unter Address and Address Range Syntax.
Zählen
Legt die Anzahl der Anweisungen oder Quelltextzeilen fest, die durchlaufen werden sollen, bevor der Vorgang abgebrochen wird. Jeder Schritt wird als separate Aktion im Befehlsfenster des Debuggers angezeigt. Der Standardwert ist Eins.
Befehl
Gibt einen Debugger-Befehl an, der nach der Ausführung der Ablaufverfolgung ausgeführt werden soll. Dieser Befehl wird ausgeführt, bevor die Standardergebnisse von t angezeigt werden. Wenn Sie auch Count verwenden, wird dieser Befehl ausgeführt, nachdem alle Aufzeichnungen abgeschlossen sind (aber bevor die Ergebnisse der letzten Aufzeichnung angezeigt werden).
Environment
Element | Beschreibung |
---|---|
Modi | Benutzermodus, Kernelmodus |
Targets | Nur Livedebugging |
Plattformen | Alle |
Zusätzliche Informationen
Weitere Informationen zur Eingabe des Befehls t und eine Übersicht über verwandte Befehle finden Sie unter Steuerung des Ziels.
Hinweise
Wenn Sie Count angeben, wird jede Anweisung angezeigt, während sie schrittweise abgearbeitet wird.
Jede Ablaufverfolgung führt eine einzelne Assembleranweisung oder eine einzelne Quellcodezeile aus, je nachdem, ob sich der Debugger im Assembler- oder im Quellcode-Modus befindet. Verwenden Sie die Befehle l+t und l-t oder die Schaltflächen in der WinDbg-Symbolleiste, um zwischen diesen Modi zu wechseln.
Wenn Sie die meisten Funktionsaufrufe verfolgen, aber bestimmte Aufrufe auslassen wollen, können Sie .step_filter (Set Step Filter) verwenden, um anzugeben, welche Aufrufe übersprungen werden sollen.
Sie können den Befehl t verwenden, um Anweisungen im ROM zu verfolgen.
Wenn Sie in WinDbg viele schnelle Ablaufverfolgungen durchführen, werden die Debugging-Informationsfenster nach jeder Ablaufverfolgung aktualisiert. Wenn diese Aktualisierung zu einer langsameren Reaktionszeit führt, verwenden Sie .suspend_ui (Suspend WinDbg Interface), um die Aktualisierung dieser Fenster vorübergehend auszusetzen.