Freigeben über


Zugreifen auf Arbeitsspeicher nach virtueller Adresse

Um auf Speicheradressen oder Adressbereiche zuzugreifen, können Sie mehrere Befehle verwenden. Visual Studio und WinDbg stellen Benutzeroberflächenelemente (sowie Befehle) bereit, die Sie zum Anzeigen und Bearbeiten von Arbeitsspeicher verwenden können. Weitere Informationen finden Sie unter Anzeigen und Bearbeiten von Arbeitsspeicher in WinDbg (klassisch).

Die folgenden Befehle können Arbeitsspeicher in einer Vielzahl von Formaten lesen oder schreiben. Zu diesen Formaten gehören hexadezimale Bytes, Wörter (Wörter, doppelte Wörter und Vierfachwörter), ganze Zahlen (kurze, lange und vierfache ganze Zahlen und ganzzahlige Ganzzahlen ohne Vorzeichen), Gleitkommazahlen (10 Byte, 16 Byte, 32 Byte und 64 Byte) und ASCII-Zeichen.

Sie können die folgenden Befehle verwenden, um spezialisiertere Datentypen zu behandeln:

  • Der Befehl dt (Anzeigetyp) findet eine Vielzahl von Datentypen und zeigt Datenstrukturen an, die von der zu debuggenden Anwendung erstellt wurden. Dieser Befehl ist sehr vielseitig und verfügt über viele Variationen und Optionen.

  • Der Befehl ds, dS (Display String) zeigt eine STRING-, ANSI_STRING- oder UNICODE_STRING Datenstruktur an.

  • Der Befehl dl (Verknüpfte Liste anzeigen) verfolgt und zeigt eine verknüpfte Liste an.

  • Der Befehl d*s (Wörter und Symbole anzeigen) findet Doppel- oder Vierfachwörter, die Symbolinformationen enthalten können, und zeigt dann die Daten und die Symbolinformationen an.

  • Der Erweiterungsbefehl !address zeigt Informationen zu den Eigenschaften des Arbeitsspeichers an, der sich an einer bestimmten Adresse befindet.

Sie können die folgenden Befehle verwenden, um Speicherbereiche zu bearbeiten:

In den meisten Situationen interpretieren diese Befehle ihre Parameter im aktuellen Radix. Daher sollten Sie 0x vor hexadezimalen Adressen hinzufügen, wenn der aktuelle Radix nicht 16 ist. Die Anzeigeausgabe dieser Befehle erfolgt jedoch in der Regel im Hexadezimalformat, unabhängig vom aktuellen Radix. (Weitere Informationen zur Ausgabe finden Sie in den einzelnen Befehlsthemen.) Im Speicherfenster werden ganze Zahlen und reelle Zahlen im Dezimalformat und andere Formate im Hexadezimalformat angezeigt.

Um den Standardradix zu ändern, verwenden Sie den Befehl n (Zahlenbasis festlegen). Um Zahlen schnell von einer Basis in eine andere zu konvertieren, verwenden Sie die ? (Ausdruck auswerten) oder den Befehl .formats (Zahlenformate anzeigen)

Beim Debuggen im Benutzermodus wird die Bedeutung virtueller Adressen durch den aktuellen Prozess bestimmt. Beim Debuggen im Kernelmodus kann die Bedeutung virtueller Adressen vom Debugger gesteuert werden. Weitere Informationen finden Sie unter Prozesskontext.