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.
Union-Komponente, die verwendet wird, wenn das Feld "MajorFunction " der FLT_IO_PARAMETER_BLOCK Struktur für den Vorgang IRP_MJ_QUERY_EA ist.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
ULONG Length;
PVOID EaList;
ULONG EaListLength;
ULONG POINTER_ALIGNMENT EaIndex;
PVOID EaBuffer;
PMDL MdlAddress;
} QueryEa;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Elemente
QueryEa: Struktur innerhalb FLT_PARAMETERS Union mit den folgenden Mitgliedern.
Länge: Länge des Puffers, auf den EaBuffer verweist, in Bytes.
EaList: Zeiger auf einen vom Aufrufer bereitgestellten, FILE_GET_EA_INFORMATION strukturierten Eingabepuffer, der die erweiterten Attribute angibt, die abgefragt werden sollen.
EaListLength: Länge des Puffers, auf den EaList verweist, in Bytes.
EaIndex: Index des Eintrags, bei dem mit dem Scannen der Erweitert-Attributliste begonnen werden soll. Dieser Parameter wird ignoriert, wenn das SL_INDEX_SPECIFIED-Flag nicht in der FLT_IO_PARAMETER_BLOCK-Struktur für den Vorgang festgelegt ist oder eaList auf eine nicht leere Liste verweist.
EaBuffer: Zeiger auf einen vom Aufrufer bereitgestellten , FILE_FULL_EA_INFORMATION strukturierten Ausgabepuffer, in dem die erweiterten Attributwerte zurückgegeben werden sollen. Dieses Element ist optional und kann NULL sein, wenn eine MDL in MdlAddress bereitgestellt wird. Siehe Anmerkungen.
MdlAddress: Adresse einer Speicherdeskriptorliste (MDL), die den Puffer beschreibt, auf den EaBuffer verweist. Dieses Element ist optional und kann NULL sein, wenn ein Puffer in EaBuffer bereitgestellt wird. Siehe Anmerkungen.
Bemerkungen
Die FLT_PARAMETERS Struktur für IRP_MJ_QUERY_EA-Vorgänge enthält die Parameter für einen IRP-basierten Abfrageattribute-Informationsvorgang, der durch eine Rückrufdatenstruktur (FLT_CALLBACK_DATA) dargestellt wird. Sie ist in einer FLT_IO_PARAMETER_BLOCK Struktur enthalten.
Wenn sowohl ein EaBuffer - als auch ein MdlAddress-Puffer bereitgestellt werden, wird empfohlen, dass Minifilter die MDL verwenden. Der Speicher, auf den EaBuffer verweist, ist gültig, wenn es sich um eine Benutzermodusadresse handelt, auf die im Kontext des Aufrufvorgangs zugegriffen wird, oder wenn es sich um eine Kernelmodusadresse handelt.
Wenn ein Minifilter den Wert von MdlAddress ändert, gibt der Filter-Manager nach dem Rückruf nach dem Vorgang die MDL frei, die derzeit in MdlAddress gespeichert ist, und stellt den vorherigen Wert von MdlAddress wieder her.
IRP_MJ_QUERY_EA ist ein IRP-basierter Vorgang.
Anforderungen
| Anforderungstyp | Anforderung |
|---|---|
| Kopfzeile | Fltkernel.h (include Fltkernel.h) |