IQueueCallbackRead::OnRead 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]
当应用程序通过 Microsoft Win32 ReadFile 或 ReadFileEx 函数从设备读取信息时,将调用 OnRead 方法来处理读取请求。
语法
void OnRead(
[in] IWDFIoQueue *pWdfQueue,
[in] IWDFIoRequest *pWdfRequest,
[in] SIZE_T NumOfBytesToRead
);
参数
[in] pWdfQueue
指向请求从中到达的 I/O 队列对象的 IWDFIoQueue 接口的指针。
[in] pWdfRequest
指向表示框架请求对象的 IWDFIoRequest 接口的指针。
[in] NumOfBytesToRead
请求的读取缓冲区的大小(以字节为单位)。
返回值
无
备注
当驱动程序调用 IWDFDevice::CreateIoQueue 方法创建 I/O 队列或配置默认 I/O 队列时,驱动程序将注册 IQueueCallbackRead 接口。
驱动程序可以为所有 I/O 队列实现单个 OnRead 方法,也可以为每个 I/O 队列实现单独的 OnRead 方法。
OnRead 方法从队列接收每个读取请求类型。 (读取请求类型由 request 的WDF_REQUEST_TYPE枚举类型的 WdfRequestRead 值标识。) OnRead 方法必须处理收到的每个读取请求。 有关 UMDF 驱动程序如何处理 I/O 请求的详细信息,请参阅 处理 I/O 请求。
驱动程序可以调用 IWDFIoRequest::GetReadParameters 和 IWDFIoRequest::GetOutputMemory 方法来检索有关请求和读取缓冲区的信息。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | wudfddi.h (包括 Wudfddi.h) |