.dump (Speicherabbilddatei erstellen)

Der Befehl .dump erstellt eine Absturzabbilddatei im Benutzermodus oder Kernelmodus.

.dump [options] FileName
.dump /?

Parameter

Optionen
Stellt eine oder mehrere der folgenden Optionen dar.

/a
Erstellen Sie Speicherabbilder für alle Prozesse (erfordert -u).

/b[a]
Paketabbild in einer CAB und Löschen des Speicherabbilds. Zusätzliche Informationen sind enthalten, wenn die Option angegeben wird.

/c-Kommentar <>
Fügen Sie einen Kommentar hinzu (nicht in allen Formaten unterstützt).

/j <addr>
Geben Sie eine JIT_DEBUG_INFO Adresse an.

/O
Überschreibt eine vorhandene Speicherabbilddatei mit demselben Namen. Wenn diese Option nicht verwendet wird und eine Datei mit demselben Dateinamen vorhanden ist, wird die Speicherabbilddatei nicht geschrieben.

/u
Fügen Sie einen eindeutigen Bezeichner an den Speicherabbildnamen an.

/f[FullOptions]
(Kernelmodus:) Erstellt ein vollständiges Speicherabbild.

(Benutzermodus:) Nicht unterstützt. Bisher wurde mit dieser Option ein vollständiges Benutzermodusabbild erstellt, bei dem es sich um ein Legacyformat mit weniger Informationen als das neuere Minidump-Format handelt. Weitere Informationen finden Sie unter Sorten von User-Mode Dumpdateien.

Sie können die folgenden FullOptions hinzufügen, um den Inhalt der Speicherabbilddatei zu ändern. Bei der Option wird die Groß-/Kleinschreibung beachtet.

FullOption Wirkung
y Fügt der Speicherabbilddatei AVX-Registrierungsinformationen hinzu.

/m[MiniOptions]
Erstellt ein kleines Speicherabbild (im Kernelmodus) oder einen Minidump (im Benutzermodus) Weitere Informationen finden Sie unter Benutzermodus-Speicherabbilddateien. Wenn weder /f noch /m angegeben ist, ist /m die Standardeinstellung.

Im Benutzermodus kann /m mit zusätzlichen MiniOptions verfolgt werden, die zusätzliche Daten angeben, die in den Speicherabbild eingeschlossen werden sollen. Wenn keine MiniOptions enthalten sind, enthält das Speicherabbild Modul-, Thread- und Stapelinformationen, aber keine zusätzlichen Daten. Sie können eine der folgenden MiniOptions hinzufügen, um den Inhalt der Speicherabbilddatei zu ändern: Bei ihnen wird die Groß-/Kleinschreibung beachtet.

MiniOption Wirkung
a Erstellt einen Minidump mit allen optionalen Ergänzungen. Die /ma-Option entspricht /mfFhut . Sie fügt dem Minidump vollständige Speicherdaten hinzu, behandelt Daten, entladene Modulinformationen, grundlegende Speicherinformationen und Threadzeitinformationen. Jeder Fehler beim Lesen von nicht erreichbarem Arbeitsspeicher führt zur Beendigung der Minidump-Generierung.
Ein Die Option /mA entspricht /ma, mit der Ausnahme, dass sie alle Fehler beim Lesen von nicht zugriffbarem Arbeitsspeicher ignoriert und weiterhin den Minidump generiert.
f Fügt dem Minidump vollständige Speicherdaten hinzu. Alle zugänglichen committeten Seiten im Besitz der Zielanwendung werden eingeschlossen.
F Fügt dem Minidump alle grundlegenden Speicherinformationen hinzu. Dadurch wird dem Minidump ein Datenstrom hinzugefügt, der alle grundlegenden Speicherinformationen enthält, nicht nur Informationen zum gültigen Arbeitsspeicher. Dadurch kann der Debugger beim Debuggen des Minidumps das gesamte Layout des virtuellen Speichers des Prozesses rekonstruieren.
h Fügt dem Minidump Daten zu den Handles hinzu, die der Zielanwendung zugeordnet sind.
u Fügt dem Minidump entladene Modulinformationen hinzu.
t Fügt dem Minidump zusätzliche Threadinformationen hinzu. Dies schließt Threadzeiten ein, die beim Debuggen des Minidumps mithilfe der Erweiterung !runaway oder des Befehls .ttime (Threadzeiten anzeigen) angezeigt werden können.
i Fügt dem Minidump sekundären Arbeitsspeicher hinzu. Sekundärer Arbeitsspeicher ist jeder Speicher, auf den durch einen Zeiger auf den Stapel oder den Sicherungsspeicher verwiesen wird, sowie ein kleiner Bereich, der diese Adresse umgibt.
p Fügt dem Minidump Daten zu Prozessumgebungsblock (PEB) und Threadumgebungsblock (TEB) hinzu. Dies kann hilfreich sein, wenn Sie Zugriff auf Windows-Systeminformationen zu den Prozessen und Threads der Anwendung benötigen.
w Fügt dem Minidump alle committeten privaten Seiten mit Lese-/Schreibzugriff hinzu.
T Fügt dem Minidump alle Lese-/Schreibdatensegmente innerhalb des ausführbaren Images hinzu.
c Fügt Codeabschnitte in Bildern hinzu.
r Löscht aus dem Minidump die Teile des Stapels und speichert Arbeitsspeicher, die für die Neuerstellung der Stapelablaufverfolgung nicht nützlich sind. Lokale Variablen und andere Datentypwerte werden ebenfalls gelöscht. Diese Option macht den Minidump nicht kleiner (da diese Speicherabschnitte einfach null sind), aber sie ist nützlich, wenn Sie die Privatsphäre anderer Anwendungen schützen möchten.
R Löscht die vollständigen Modulpfade aus dem Minidump. Es werden nur die Modulnamen eingeschlossen. Dies ist eine nützliche Option, wenn Sie die Privatsphäre der Verzeichnisstruktur des Benutzers schützen möchten.
j Fügt der Speicherabbilddatei AVX-Registrierungsinformationen hinzu.

Kernelmodusoptionen

Die folgenden Optionen sind im Kernelmodus verfügbar.

/K
Erstellen Sie ein Speicherabbild nur mit Kernelspeicher.

/Ka
Erstellen Sie ein Speicherabbild mit aktivem Kernel und Arbeitsspeicher im Benutzermodus.

Zusätzliche Informationen

Eine Beschreibung der Kernelmodus-Dumpdateien und eine Erläuterung ihrer Verwendung finden Sie unter Kernelmodus-Dumpdateien. Eine Beschreibung der Speicherabbilddateien im Benutzermodus und eine Erläuterung ihrer Verwendung finden Sie unter Benutzermodusabbilddateien.

Hinweise

Dieser Befehl kann in einer Vielzahl von Situationen verwendet werden:

  • Während des Debuggens im Livebenutzermodus weist dieser Befehl die Zielanwendung an, eine Speicherabbilddatei zu generieren, aber die Zielanwendung wird nicht beendet.

  • Während des Debuggens im Live-Kernelmodus weist dieser Befehl den Zielcomputer an, eine Speicherabbilddatei zu generieren, aber der Zielcomputer stürzt nicht ab.

  • Während des Debuggens von Absturzabbildern erstellt dieser Befehl eine neue Absturzabbilddatei aus der alten Datei. Dies ist nützlich, wenn Sie über eine große Absturzabbilddatei verfügen und eine kleinere erstellen möchten.

Sie können steuern, welcher Typ der Speicherabbilddatei erstellt wird:

  • Verwenden Sie im Kernelmodus die Option /f, um ein vollständiges Speicherabbild zu erstellen. Verwenden Sie zum Erstellen eines kleinen Speicherabbilds die Option /m (oder keine Optionen). Der Befehl .dump kann kein Kernelspeicherabbild erstellen.

  • Im Benutzermodus ist .dump/m[MiniOptions] die beste Wahl. Obwohl "m" für "minidump" steht, können die mit dieser MiniOption erstellten Dumpdateien von sehr klein bis sehr groß variieren. Durch Angabe der richtigen MiniOptions können Sie genau steuern, welche Informationen enthalten sind. Beispielsweise erzeugt .dump /ma ein Speicherabbild mit einer großen Anzahl von Informationen. Der ältere Befehl .dump /f erzeugt eine mäßig große "Standardabbilddatei" und kann nicht angepasst werden.

Sie können nicht angeben, welcher Prozess gedumpt wird. Alle ausgeführten Prozesse werden dumped.

Die Optionen /xc, /xr, /xp und /xt werden verwendet, um Ausnahme- und Kontextinformationen in der Speicherabbilddatei zu speichern. Dadurch kann der Befehl ECXR (Ausnahmekontextdatensatz anzeigen) für diese Speicherabbilddatei ausgeführt werden.

Im folgenden Beispiel wird ein Minidump im Benutzermodus erstellt, der den vollständigen Arbeitsspeicher und die Verarbeitung von Informationen enthält:

0:000> .dump /mfh myfile.dmp

Handle-Informationen können mithilfe des !handle-Erweiterungsbefehls gelesen werden.

Weitere Informationen

Varianten von Kernel-Mode-Speicherabbilddateien