WDF_REQUEST_PARAMETERS 结构 (wdfrequest.h)
[适用于 KMDF 和 UMDF]
WDF_REQUEST_PARAMETERS 结构接收与 I/O 请求关联的参数。
语法
typedef struct _WDF_REQUEST_PARAMETERS {
USHORT Size;
UCHAR MinorFunction;
WDF_REQUEST_TYPE Type;
union {
struct {
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT FileAttributes;
USHORT ShareAccess;
ULONG POINTER_ALIGNMENT EaLength;
} Create;
struct {
size_t Length;
ULONG POINTER_ALIGNMENT Key;
LONGLONG DeviceOffset;
} Read;
struct {
size_t Length;
ULONG POINTER_ALIGNMENT Key;
LONGLONG DeviceOffset;
} Write;
struct {
size_t OutputBufferLength;
size_t POINTER_ALIGNMENT InputBufferLength;
ULONG POINTER_ALIGNMENT IoControlCode;
PVOID Type3InputBuffer;
} DeviceIoControl;
struct {
PVOID Arg1;
PVOID Arg2;
ULONG POINTER_ALIGNMENT IoControlCode;
PVOID Arg4;
} Others;
} Parameters;
} WDF_REQUEST_PARAMETERS, *PWDF_REQUEST_PARAMETERS;
成员
Size
此结构的大小(以字节为单位)。
MinorFunction
与 I/O 请求关联的 IRP 次要函数代码(如果有)。 某些主要函数代码具有关联的次要函数代码。
Type
标识 I/O 请求类型的 WDF_REQUEST_TYPE类型值。
Parameters
每个 IRP 主要函数代码的唯一参数。 此成员包含 IO_STACK_LOCATION 结构的 Parameters 成员的子集。
Parameters.Create
IRP_MJ_CREATE的参数。
Parameters.Create.SecurityContext
Parameters.Create.Options
Parameters.Create.FileAttributes
Parameters.Create.ShareAccess
Parameters.Create.EaLength
Parameters.Read
IRP_MJ_READ的参数。
Parameters.Read.Length
Parameters.Read.Key
Parameters.Read.DeviceOffset
Parameters.Write
IRP_MJ_WRITE的参数。
Parameters.Write.Length
Parameters.Write.Key
Parameters.Write.DeviceOffset
Parameters.DeviceIoControl
IRP_MJ_DEVICE_CONTROL和IRP_MJ_INTERNAL_DEVICE_CONTROL的参数。
Parameters.DeviceIoControl.OutputBufferLength
Parameters.DeviceIoControl.InputBufferLength
Parameters.DeviceIoControl.IoControlCode
Parameters.DeviceIoControl.Type3InputBuffer
Parameters.Others
此成员的用法由驱动程序堆栈定义。
Parameters.Others.Arg1
Parameters.Others.Arg2
Parameters.Others.IoControlCode
Parameters.Others.Arg4
注解
WDF_REQUEST_PARAMETERS 结构用作 WdfRequestGetParameters 的输入。 驱动程序必须调用 WDF_REQUEST_PARAMETERS_INIT 才能初始化此结构,然后才能调用 WdfRequestGetParameters。
要求
要求 | 值 |
---|---|
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
标头 | wdfrequest.h (包括 Wdf.h) |