WDF_REQUEST_TYPE枚举 (wdfrequest.h)

[适用于 KMDF 和 UMDF]

WDF_REQUEST_TYPE枚举类型标识框架请求对象可能包含的请求类型。

语法

typedef enum _WDF_REQUEST_TYPE {
  WdfRequestTypeCreate = 0x0,
  WdfRequestTypeCreateNamedPipe = 0x1,
  WdfRequestTypeClose = 0x2,
  WdfRequestTypeRead = 0x3,
  WdfRequestTypeWrite = 0x4,
  WdfRequestTypeQueryInformation = 0x5,
  WdfRequestTypeSetInformation = 0x6,
  WdfRequestTypeQueryEA = 0x7,
  WdfRequestTypeSetEA = 0x8,
  WdfRequestTypeFlushBuffers = 0x9,
  WdfRequestTypeQueryVolumeInformation = 0xa,
  WdfRequestTypeSetVolumeInformation = 0xb,
  WdfRequestTypeDirectoryControl = 0xc,
  WdfRequestTypeFileSystemControl = 0xd,
  WdfRequestTypeDeviceControl = 0xe,
  WdfRequestTypeDeviceControlInternal = 0xf,
  WdfRequestTypeShutdown = 0x10,
  WdfRequestTypeLockControl = 0x11,
  WdfRequestTypeCleanup = 0x12,
  WdfRequestTypeCreateMailSlot = 0x13,
  WdfRequestTypeQuerySecurity = 0x14,
  WdfRequestTypeSetSecurity = 0x15,
  WdfRequestTypePower = 0x16,
  WdfRequestTypeSystemControl = 0x17,
  WdfRequestTypeDeviceChange = 0x18,
  WdfRequestTypeQueryQuota = 0x19,
  WdfRequestTypeSetQuota = 0x1A,
  WdfRequestTypePnp = 0x1B,
  WdfRequestTypeOther = 0x1C,
  WdfRequestTypeUsb = 0x40,
  WdfRequestTypeNoFormat = 0xFF,
  WdfRequestTypeMax
} WDF_REQUEST_TYPE;

常量

 
WdfRequestTypeCreate
值: 0x0
请求对象表示 IRP_MJ_CREATE 请求。 框架将这种类型的请求传递给驱动程序的 EvtDeviceFileCreate 回调函数。
WdfRequestTypeCreateNamedPipe
值: 0x1
请求对象表示 IRP_MJ_CREATE_NAMED_PIPE 请求。 框架不处理此类请求。
WdfRequestTypeClose
值: 0x2
请求对象表示 IRP_MJ_CLOSE 请求。 框架将这种类型的请求传递到驱动程序的 EvtFileClose 回调函数。
WdfRequestTypeRead
值: 0x3
请求对象表示 IRP_MJ_READ 请求。 框架将这种类型的请求传递给驱动程序 的请求处理程序
WdfRequestTypeWrite
值: 0x4
请求对象表示 IRP_MJ_WRITE 请求。 框架将这种类型的请求传递给驱动程序 的请求处理程序
WdfRequestTypeQueryInformation
值: 0x5
请求对象表示 IRP_MJ_QUERY_INFORMATION 请求。 框架不处理此类请求。
WdfRequestTypeSetInformation
值: 0x6
请求对象表示 IRP_MJ_SET_INFORMATION 请求。 框架不处理此类请求。
WdfRequestTypeQueryEA
值: 0x7
请求对象表示 IRP_MJ_QUERY_EA 请求。 框架不处理此类请求。
WdfRequestTypeSetEA
值: 0x8
请求对象表示 IRP_MJ_SET_EA 请求。 框架不处理此类请求。
WdfRequestTypeFlushBuffers
值: 0x9
请求对象表示 IRP_MJ_FLUSH_BUFFERS 请求。 框架不处理此类请求。
WdfRequestTypeQueryVolumeInformation
值: 0xa
请求对象表示 IRP_MJ_QUERY_VOLUME_INFORMATION 请求。 框架不处理此类请求。
WdfRequestTypeSetVolumeInformation
值: 0xb
请求对象表示 IRP_MJ_SET_VOLUME_INFORMATION 请求。 框架不处理此类请求。
WdfRequestTypeDirectoryControl
值: 0xc
请求对象表示 IRP_MJ_DIRECTORY_CONTROL 请求。 框架不处理此类请求。
WdfRequestTypeFileSystemControl
值: 0xd
请求对象表示 IRP_MJ_FILE_SYSTEM_CONTROL 请求。 框架不处理此类请求。
WdfRequestTypeDeviceControl
值: 0xe
请求对象表示 IRP_MJ_DEVICE_CONTROL 请求。 框架将这种类型的请求传递给驱动程序 的请求处理程序
WdfRequestTypeDeviceControlInternal
值: 0xf
请求对象表示 IRP_MJ_INTERNAL_DEVICE_CONTROL 请求。 框架将这种类型的请求传递给驱动程序 的请求处理程序
WdfRequestTypeShutdown
值: 0x10
请求对象表示 IRP_MJ_SHUTDOWN 请求。 框架处理驱动程序的此类请求,但框架还会调用驱动程序的 EvtDeviceShutdownNotification 回调函数(如果存在)。
WdfRequestTypeLockControl
值: 0x11
请求对象表示 IRP_MJ_LOCK_CONTROL 请求。 框架不处理此类请求。
WdfRequestTypeCleanup
值: 0x12
请求对象表示 IRP_MJ_CLEANUP 请求。 框架将此类请求传递到驱动程序的 EvtFileCleanup 回调函数。
WdfRequestTypeCreateMailSlot
值: 0x13
请求对象表示 IRP_MJ_CREATE_MAILSLOT 请求。 框架不处理此类请求。
WdfRequestTypeQuerySecurity
值: 0x14
请求对象表示 IRP_MJ_QUERY_SECURITY 请求。 框架不处理此类请求。
WdfRequestTypeSetSecurity
值: 0x15
请求对象表示 IRP_MJ_SET_SECURITY 请求。 框架不处理此类请求。
WdfRequestTypePower
值: 0x16
请求对象表示 IRP_MJ_POWER 请求。 框架处理驱动程序的此类请求,但框架还会调用驱动程序的常规FDOPDO 回调函数,以便即插即用 (PnP) 和电源管理(如果回调函数存在)。
WdfRequestTypeSystemControl
值: 0x17
请求对象表示 IRP_MJ_SYSTEM_CONTROL 请求。 如果驱动程序支持 Windows Management Instrumentation (WMI) ,框架将处理驱动程序的此类请求。
WdfRequestTypeDeviceChange
值: 0x18
请求对象表示 IRP_MJ_DEVICE_CHANGE 请求。 框架不处理此类请求。
WdfRequestTypeQueryQuota
值: 0x19
请求对象表示 IRP_MJ_QUERY_QUOTA 请求。 框架不处理此类请求。
WdfRequestTypeSetQuota
值: 0x1A
请求对象表示 IRP_MJ_SET_QUOTA 请求。 框架不处理此类请求。
WdfRequestTypePnp
值: 0x1B
请求对象表示 IRP_MJ_PNP 请求。 框架处理驱动程序的此类请求,但如果回调函数存在,框架还会为 PnP 和电源管理调用驱动程序的 常规FDOPDO 回调函数。
WdfRequestTypeOther
值: 0x1C
当使用 WdfIoTargetFormatRequestForInternalIoctlOthers 格式化的请求完成时,驱动程序在其 CompletionRoutine 事件回调函数中接收此请求类型。
WdfRequestTypeUsb
值: 0x40
目标设备是 USB 设备。 (此值仅在 WDF_REQUEST_COMPLETION_PARAMS 结构中使用。)
WdfRequestTypeNoFormat
值: 0xFF
尚未指定请求对象的类型。
WdfRequestTypeMax
已分配给有效 IRP 主函数代码的最大值。

注解

WDF_REQUEST_TYPE 枚举类型用于WDF_REQUEST_PARAMETERSWDF_REQUEST_COMPLETION_PARAMS结构。

有关基于框架的驱动程序如何处理框架不支持的请求类型的信息,请参阅 处理框架不支持的 IRP

有关此枚举的 UMDF 版本,请参阅 WDF_REQUEST_TYPE (UMDF)

要求

要求
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfrequest.h (包括 Wdf.h)

另请参阅

EvtDeviceFileCreate

EvtDeviceShutdownNotification

EvtFileCleanup

EvtFileClose