IRP_MJ_SET_EA作業的FLT_PARAMETERS結構包含回呼資料所代表之 set-extended-attributes-information-operation 的參數, (FLT_CALLBACK_DATA) 結構。 它包含在FLT_IO_PARAMETER_BLOCK結構中。 如果同時提供EaBuffer和MdlAddress緩衝區,建議迷你篩選使用 MDL。當 EaBuffer在呼叫進程的內容中存取使用者模式位址,或是它是核...
IRP_MJ_DIRECTORY_CONTROL IRP_MJ_FILE_SYSTEM_CONTROL IRP_MJ_FLUSH_BUFFERS IRP_MJ_INTERNAL_DEVICE_CONTROL IRP_MJ_LOCK_CONTROL IRP_MJ_PNP IRP_MJ_QUERY_EA IRP_MJ_QUERY_INFORMATION IRP_MJ_QUERY_QUOTA IRP_MJ_QUERY_SECURITY IRP_MJ_QUERY_VOLUME_INFORMATION IRP_MJ_READ IRP_MJ_SET_EA IRP_MJ_SET...
IRP_MJ_QUERY_EA操作的FLT_PARAMETERS结构包含基于 IRP 的查询扩展属性信息操作的参数,该操作由回调数据 (FLT_CALLBACK_DATA) 结构表示。 它包含在FLT_IO_PARAMETER_BLOCK结构中。如果同时提供了 EaBuffer 和MdlAddress 缓冲区,建议微筛选器使用 MDL。 如果EaBuffer 指向的内存是在调用进程的上下文中访问的用户模式...
IRP_MJ_SET_EA 0x08 IRP_MJ_FLUSH_BUFFERS 0x09 IRP_MJ_QUERY_VOLUME_INFORMATION 0x0A IRP_MJ_SET_VOLUME_INFORMATION 0x0B IRP_MJ_DIRECTORY_CONTROL 0x0C IRP_MJ_FILE_SYSTEM_CONTROL 0x0D IRP_MJ_DEVICE_CONTROL 0x0E IRP_MJ_INTERNAL_DEVICE_CONTROL IRP_MJ_SCSI ...
pDriverObject->MajorFunction[IRP_MJ_SET_INFORMATION] = HelloDDKDispatchRoutine; pDriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = HelloDDKDispatchRoutine; pDriverObject->MajorFunction[IRP_MJ_SHUTDOWN] = HelloDDKDispatchRoutine; pDriverObject->MajorFunction[IRP_MJ_SYSTEM_CONTROL] = HelloDDKDispat...
IRP_MJ_READ IRP_MJ_SET_EA IRP_MJ_SET_QUOTA IRP_MJ_WRITE Flags 成员中的DO_BUFFERED_IO和DO_DIRECT_IO标志如下所示:如果设置了DO_BUFFERED_IO标志,则操作将使用缓冲 I/O。 如果设置了DO_DIRECT_IO标志且未设置DO_BUFFERED_IO标志,则操作将使用直接 I/O。 如果两个标志均未设置,则操作既不会使用...
47"IRP_MJ_CREATE", 48"IRP_MJ_CREATE_NAMED_PIPE", 49"IRP_MJ_CLOSE", 50"IRP_MJ_READ", 51"IRP_MJ_WRITE", 52"IRP_MJ_QUERY_INFORMATION", 53"IRP_MJ_SET_INFORMATION", 54"IRP_MJ_QUERY_EA", 55"IRP_MJ_SET_EA", 56"IRP_MJ_FLUSH_BUFFERS", ...
typedef struct _IO_STACK_LOCATION{UCHARMajorFunction;UCHARMinorFunction;UCHARFlags;UCHARControl;union{/// Parameters for IRP_MJ_CREATE//struct{PIO_SECURITY_CONTEXTSecurityContext;ULONGOptions;USHORTPOINTER_ALIGNMENTFileAttributes;USHORTShareAccess;ULONGPOINTER_ALIGNMENTEaLength;}Create;/// Parameters for IRP...
#define IRP_MJ_CREATE_NAMED_PIPE 0x01 #define IRP_MJ_CLOSE 0x02 #define IRP_MJ_READ 0x03 #define IRP_MJ_WRITE 0x04 #define IRP_MJ_QUERY_INFORMATION 0x05 #define IRP_MJ_SET_INFORMATION 0x06 #define IRP_MJ_QUERY_EA 0x07 #define IRP_MJ_SET_EA 0x08 ...
47"IRP_MJ_CREATE", 48"IRP_MJ_CREATE_NAMED_PIPE", 49"IRP_MJ_CLOSE", 50"IRP_MJ_READ", 51"IRP_MJ_WRITE", 52"IRP_MJ_QUERY_INFORMATION", 53"IRP_MJ_SET_INFORMATION", 54"IRP_MJ_QUERY_EA", 55"IRP_MJ_SET_EA", 56"IRP_MJ_FLUSH_BUFFERS", ...