WDF_REQUEST_SEND_OPTIONS_FLAGS 枚举 (wudfddi_types.h)

[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]

WDF_REQUEST_SEND_OPTIONS_FLAGS枚举类型定义驱动程序在调用 IWDFIoRequest::Send 时可以指定的标志。

语法

typedef enum _WDF_REQUEST_SEND_OPTIONS_FLAGS {
  WDF_REQUEST_SEND_OPTION_TIMEOUT,
  WDF_REQUEST_SEND_OPTION_SYNCHRONOUS,
  WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE,
  WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET,
  WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT,
  WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE
} WDF_REQUEST_SEND_OPTIONS_FLAGS;

常量

 
WDF_REQUEST_SEND_OPTION_TIMEOUT
如果设置,则 IWDFIoRequest::Send 方法的 Timeout 参数有效。
WDF_REQUEST_SEND_OPTION_SYNCHRONOUS
如果设置,UMDF 将同步发送 I/O 请求。
WDF_REQUEST_SEND_OPTION_IGNORE_TARGET_STATE
如果已设置,UMDF 会将 I/O 请求发送到 I/O 目标,而不考虑 I/O 目标的状态。 如果未设置,则当目标停止时,UMDF 会将请求排队。 设置此标志允许驱动程序在驱动程序调用 IWDFIoTargetStateManagement::Stop 后向设备发送请求,例如重置 USB 管道的请求。
WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET
如果设置,驱动程序将异步发送请求,并且不需要在请求完成或取消时收到通知。 驱动程序不会为请求设置 IRequestCallbackRequestCompletion::OnCompletion 回调函数或调用 IWDFIoRequest::Complete 。 有关此标志的详细信息,请参阅以下“备注”部分。
WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT
如果已设置,并且 I/O 请求类型为 WdfRequestCreate则 Send 方法将尝试将客户端的 模拟 级别传递给驱动程序的 I/O 目标。 此值在 UMDF 版本 1.9 及更高版本中可用。
WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE
如果设置,UMDF 将忽略模拟失败。 此值只能与 WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT 一起使用。 此值在 UMDF 版本 1.9 及更高版本中可用。

注解

设置WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET标志的驱动程序通常不会在调用 IWDFIoRequest::Send 以将请求发送到 I/O 目标之前格式化 I/O 请求。 事实上,设置此标志的驱动程序在调用 IWDFIoRequest::Send 之前不得调用任何 IWdfIoTarget::FormatRequestForXxx 方法。 驱动程序只能使用 IWDFIoRequest::FormatUsingCurrentType 方法设置请求的格式。

如果 IWDFIoRequest::SendpIoTarget 参数指向基于文件句柄的 I/O 目标对象,则驱动程序无法设置WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET标志。 有关此类 I/O 目标的详细信息,请参阅 在 UMDF 中初始化常规 I/O 目标

如果驱动程序设置WDF_REQUEST_SEND_OPTION_SEND_AND_FORGET标志,则不能设置除WDF_REQUEST_SEND_OPTION_IMPERSONATE_CLIENT和WDF_REQUEST_SEND_OPTION_IMPERSONATION_IGNORE_FAILURE以外的任何其他标志。

有关客户端模拟的详细信息,请参阅 处理客户端模拟

有关此枚举的 KMDF 版本,请参阅 WDF_REQUEST_SEND_OPTIONS_FLAGS

要求

要求
最低 UMDF 版本 1.0
标头 wudfddi_types.h (包括 Wudfddi.h)

另请参阅

IWDFIoRequest::Send