IWDFIoRequest::GetInputMemory 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 没有将新功能添加到 UMDF 1,并且对较新版本的 Windows 10 上的 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅 UMDF入门 。]
GetInputMemory 方法检索表示 I/O 请求中的输入缓冲区的内存对象。
语法
void GetInputMemory(
[out] IWDFMemory **ppWdfMemory
);
参数
[out] ppWdfMemory
指向一个变量的指针,该变量接收内存对象的引用计数 IWDFMemory 接口的指针。 请注意,返回 NULL 有效;在这种情况下,没有与 I/O 请求关联的输入内存。
返回值
没有
言论
使用 缓冲 I/O 访问方法的驱动程序可以调用 GetInputMemory 以获取 I/O 请求的输入缓冲区。
在驱动程序完成 I/O 请求之前,驱动程序必须调用内存对象的 IWDFMemory::Release 方法。 完成请求后,将释放基础内存对象。
与 I/O 请求关联的输入缓冲区包含要写入到请求发起方的信息(例如,要写入磁盘的数据)。 驱动程序可以调用 GetInputMemory 以获取写入请求或设备 I/O 控制请求的输入缓冲区,但不能用于读取请求(因为读取请求不提供输入数据)。 若要访问输入缓冲区,驱动程序必须调用 IWDFMemory::GetDataBuffer 方法。
UMDF 在收到 I/O 请求之前,在将 I/O 请求添加到驱动程序的 I/O 队列之前,创建 I/O 请求的内存对象。 如果 UMDF 无法为内存对象分配内存,它将完成 I/O 请求并返回失败状态,并且不会将 I/O 请求传递到驱动程序。
有关访问 I/O 请求的数据缓冲区的详细信息,请参阅 访问 UMDF-Based 驱动程序中的数据缓冲区。
例子
有关如何使用 GetInputMemory 方法的代码示例,请参阅 IWDFIoRequest::Complete。
要求
要求 | 价值 |
---|---|
终止支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.5 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |