IRP_MJ_SET_EA等位的FLT_PARAMETERS
作業之FLT_IO_PARAMETER_BLOCK結構的 MajorFunction 字段IRP_MJ_SET_EA時使用的等位元件。
語法
typedef union _FLT_PARAMETERS {
... ;
struct {
ULONG Length;
PVOID EaBuffer;
PMDL MdlAddress;
} SetEa;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
成員
SetEa:包含下列成員的結構。
長度: EaBuffer 指向的緩衝區長度,以位元組為單位。
EaBuffer:所要設定之呼叫端提供的 FILE_FULL_EA_INFORMATION結構化輸入緩衝區指標,其中包含要設定的 EA (擴充屬性) 值。 如果 MdlAddress 中提供 MDL,這個成員是選擇性的,而且可以是 NULL。 請參閱備註。
MdlAddress:描述 EaBuffer 指向的緩衝區 (MDL) 記憶體描述項清單的位址。 如果 EaBuffer 中提供緩衝區,這個成員是選擇性的,而且可以是 NULL。 請參閱備註。
備註
IRP_MJ_SET_EA作業的FLT_PARAMETERS結構包含回呼數據所代表的 set-extended-attributes-information-operation 參數 (FLT_CALLBACK_DATA) 結構。 它包含在 FLT_IO_PARAMETER_BLOCK 結構中。
如果同時提供 EaBuffer 和 MdlAddress 緩衝區,建議迷你篩選器使用 MDL。 當 EaBuffer 是在呼叫進程內容中存取的使用者模式位址時,或如果是核心模式位址,EaBuffer 所指向的記憶體是有效的。
如果迷你篩選程序變更 MdlAddress 的值,則在後續作業回呼之後,篩選管理員會釋放目前儲存在 MdlAddress 中的 MDL ,並還原先前的 MdlAddress 值。
IRP_MJ_SET_EA是以 IRP 為基礎的作業。
規格需求
需求類型 | 需求 |
---|---|
標頭 | Fltkernel.h (包括 Fltkernel.h) |