Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das folgende FLT_PARAMETERS Unionsmitglied wird verwendet, wenn FLT_IO_PARAMETER_BLOCK. MajorFunction ist IRP_MJ_MDL_WRITE_COMPLETE.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
LARGE_INTEGER FileOffset;
PMDL MdlChain;
} MdlWriteComplete;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Elemente
MdlWriteComplete: Struktur, die die folgenden Member enthält.
FileOffset: Byte wird innerhalb der zwischengespeicherten Datei gestartet.
MdlChain: Zeiger auf eine Variable, die einen Zeiger auf eine Kette einer oder mehrerer Speicherdeskriptorlisten (MDL) empfängt, die die Seiten beschreiben, die die Daten enthalten, die in die zwischengespeicherte Datei geschrieben werden sollen.
Bemerkungen
IRP_MJ_MDL_WRITE_COMPLETE ist ein schneller E/A-Vorgang. Es funktioniert genauso wie IRP_MJ_WRITE + IRP_MN_COMPLETE_MDL mit Ausnahme des folgenden Unterschieds:
- Der IRP-basierte Vorgang richtet die Zwischenspeicherung für die Datei ein, wenn er noch nicht zwischengespeichert wird, bevor die MDL-Arbeit ausgeführt wird.
- Der Fast IO-Vorgang schlägt fehl, wenn die Datei noch nicht zwischengespeichert ist.
Die FLT_PARAMETERS Struktur für IRP_MJ_MDL_WRITE_COMPLETE Vorgänge enthält die Parameter für einen schnellen E/A-MdlWriteComplete-Vorgang . Dieser Vorgang wird durch eine Rückrufdatenstruktur (FLT_CALLBACK_DATA) mit den Parametern des Vorgangs in der FLT_IO_PARAMETER_BLOCK Struktur dargestellt, auf die Iopb verweist.
Wenn eine schnelle E/A-IRP_MJ_MDL_WRITE_COMPLETE Anforderung fehlschlägt, bestimmt der Aussteller der E/A, wie die Anforderung erneut ausgeführt werden soll. Die Anforderung kann z. B. mit IRP_MJ_WRITE + IRP_MN_COMPLETE_MDL als IRP-basierten Vorgang neu hergestellt werden.
Anforderungen
| Anforderungstyp | Anforderung |
|---|---|
| Kopfzeile | Fltkernel.h (include Fltkernel.h) |