~e (Threadspezifischer Befehl)
Der Befehl ~e führt einen oder mehrere Befehle für einen bestimmten Thread oder für alle Threads im Zielprozess aus.
Verwechseln Sie diesen Befehl nicht mit dem Befehl e (Werte eingeben ).
~Thread e CommandString
Parameter
Faden
Gibt den Thread oder die Threads an, für den der Debugger CommandString ausführt. Weitere Informationen über die Syntax finden Sie unter Thread-Syntax.
CommandString
Gibt einen oder mehrere auszuführende Befehle an. Sie sollten mehrere Befehle durch Semikolons trennen. CommandString enthält den Rest der Eingabezeile. Der gesamte Text, der auf den Buchstaben "e" folgt, wird als Teil dieser Zeichenfolge interpretiert. Schließen Sie CommandString nicht in Anführungszeichen ein.
Environment
Element | Beschreibung |
---|---|
Modi | Nur Benutzermodus |
Targets | Live, Crash Dump |
Plattformen | Alle |
Zusätzliche Informationen
Weitere Informationen zu anderen Befehlen, die Threads steuern, finden Sie unter Steuern von Prozessen und Threads.
Hinweise
Sie können Threads nur im Benutzermodus angeben. Im Kernelmodus bezieht sich die Tilde (~) auf einen Prozessor.
Wenn Sie den Befehl ~e zusammen mit einem Thread verwenden, speichert der Befehl "~e " nur einige Eingaben. Die folgenden beiden Befehle sind z. B. gleichwertig.
0:000> ~2e r; k; kd
0:000> ~2r; ~2k; ~2kd
Sie können jedoch den ~e-Qualifizierer verwenden, um einen Befehl oder Erweiterungsbefehl mehrmals zu wiederholen. Wenn Sie den Qualifizierer auf diese Weise verwenden, kann es zusätzliche Eingaben vermeiden. Beispielsweise wiederholt der folgende Befehl den Erweiterungsbefehl !gle für jeden Thread, den Sie debuggen.
0:000> ~*e !gle
Wenn bei der Ausführung eines Befehls ein Fehler auftritt, wird die Ausführung mit dem nächsten Befehl fortgesetzt.
Sie können den ~e-Qualifizierer nicht zusammen mit Ausführungsbefehlen verwenden (g, gn, gN, gu, p, pa, pc, t, ta, tb, tc, wt).
Sie können den ~e-Qualifizierer nicht zusammen mit den bedingten Befehlen j (Execute If-Else) oder z (Execute While) verwenden.
Wenn Sie mehrere Prozesse debuggen, können Sie den Befehl ~e nicht verwenden, um auf den virtuellen Speicherplatz für einen inaktiven Prozess zuzugreifen.