Freigeben über


DUMP_WRITE Rückruffunktion (ntdddump.h)

Die Dump_Write Rückrufroutine wird aufgerufen, bevor der Schreibvorgang in den Dumpporttreiber erfolgt. Der Filtertreiber kann zurzeit auf die Speicherabbilddaten zugreifen.

Syntax

DUMP_WRITE DumpWrite;

NTSTATUS DumpWrite(
  [in]      PFILTER_EXTENSION FilterExtension,
  [in, out] PLARGE_INTEGER DiskByteOffset,
  [in, out] PMDL Mdl
)
{...}

Parameter

[in] FilterExtension

Ein Zeiger auf eine FILTER_EXTENSION Struktur.

[in, out] DiskByteOffset

Der Wert in Bytes relativ zur Zielpartition für das Absturzabbild oder den Ruhezustand. Filtertreiber sollten dieses Feld nicht ändern.

[in, out] Mdl

Ein Zeiger auf eine MDL--Struktur, die den Datenpuffer beschreibt. Wenn die MDL- geändert wird, kann die Größe des Schreibvorgangs nicht geändert werden.

Rückgabewert

Wenn die Routine erfolgreich ist, muss sie STATUS_SUCCESS zurückgeben. Andernfalls muss eine der fehlerstatuswerte zurückgegeben werden, die in Ntstatus.hdefiniert sind.

Bemerkungen

Filtertreiber können die Daten lesen, die geschrieben werden müssen. Filtertreiber können jedoch nicht in den Puffer schreiben, da dadurch der Inhalt des Codes oder der Daten geändert werden kann, die vom Absturzabbildprozess verwendet werden. Außerdem dürfen Filtertreiber die Größe der Daten nicht ändern.

Um die Daten für den Dumpschreibvorgang sicher zu ändern, sollte ein Filtertreiber einen sekundären Puffer zuweisen. Die Größe des Puffers entspricht dem Wert des MaxPagesPerWrite Member von FILTER_INITIALIZATION_DATA multipliziert mit PAGE_SIZE. Die Daten für den aktuellen Puffer, der von Mdl beschrieben wird, werden in den sekundären Puffer kopiert und verarbeitet. Nachdem der Filter die Verarbeitung der Speicherabbilddaten im sekundären Puffer abgeschlossen hat, wird die MDL- auf Mdl mit der Adresse des sekundären Puffers aktualisiert. Die Startadresse des sekundären Puffers, der im MDL- festgelegt ist, muss auf der Seite ausgerichtet sein.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows Vista und Windows Server 2008.
Zielplattform- Desktop
Header- ntdddump.h (enthalten Ntdddump.h)

Siehe auch

Dump_Read

FILTER_EXTENSION

FILTER_INITIALIZATION_DATA