FLT_PARAMETERS for IRP_MJ_NETWORK_QUERY_OPEN union
Die folgende Union-Komponente wird verwendet, wenn das Feld MajorFunction der Struktur FLT_IO_PARAMETER_BLOCK für den Vorgang IRP_MJ_NETWORK_QUERY_OPEN lautet.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
PIRP Irp;
PFILE_NETWORK_OPEN_INFORMATION NetworkInformation;
} NetworkQueryOpen;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Member
NetworkQueryOpen: Struktur, die die folgenden Mitglieder enthält.
Irp: Zeiger auf einen erstellten IRP, der diesen offenen Vorgang darstellt. Dieser IRP ist vom Dateisystem für allgemeinen Code zum Öffnen/Erstellen zu verwenden, aber nicht wirklich abgeschlossen.
NetworkInformation: Zeiger auf einen FILE_NETWORK_OPEN_INFORMATION-strukturierten Puffer zur Aufnahme der angeforderten Informationen über die Datei.
Hinweise
Die Struktur FLT_PARAMETERS für IRP_MJ_NETWORK_QUERY_OPEN-Vorgänge enthält die Parameter für einen NetworkQueryOpen-Vorgang, der durch eine (FLT_CALLBACK_DATA) Struktur dargestellt wird. Die FLT_PARAMETERS-Struktur ist in einer FLT_IO_PARAMETER_BLOCK-Struktur enthalten.
Hinweis
Das mit IRP_MJ_NETWORK_QUERY_OPEN verbundene Dateiobjekt ist ein Stack-basiertes Objekt. Ein für den NetworkQueryOpen-Callback registrierter Filter darf dieses Objekt nicht referenzieren. Das heißt, rufen Sie ObReferenceObject oder ObDereferenceObject nicht auf diesem Stack-basierten Dateiobjekt auf und speichern Sie keinen Zeiger auf das Objekt.
IRP_MJ_NETWORK_QUERY_OPEN ist ein schneller E/A-Vorgang. Es ist das Äquivalent zum Vorgang FastIoQueryOpen (nicht FastIoQueryNetworkOpenInfo). Ein Filter kann den Vorgang in seinem Pre-Operation-Callback mit FLT_PREOP_DISALLOW_FASTIO zurückweisen. Er kann den Vorgang in seinem Post-Operation-Callback nicht ablehnen, da das Dateisystem den Vorgang bereits abgeschlossen hat und die Daten vorhanden sind.
Anforderungen
Anforderungstyp | Anforderung |
---|---|
Header | Fltkernel.h (einschließlich Fltkernel.h) |