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 |