IWDFIoRequest::GetFileObject 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]
GetFileObject 方法检索指向与 I/O 请求关联的 IWDFFile 接口的指针。
语法
void GetFileObject(
[out] IWDFFile **ppFileObject
);
参数
[out] ppFileObject
指向缓冲区的指针,该缓冲区接收指向文件对象的 IWDFFile 接口的指针。 请注意,返回 NULL 有效。
返回值
无
备注
当驱动程序调用 GetFileObject 时,框架会递增接口上的引用计数。 驱动程序负责在使用接口指针完成时释放引用。 为此,请使用智能指针,该指针在对象超出上下文时自动递减引用计数,或者在使用完对象后在接口上调用 Release 。
示例
以下代码示例取自 WDK 中的 WpdMultiTransportDriver 示例。 该示例声明指向 IWDFFile 接口的智能指针,调用 GetFileObject,然后对文件对象调用 RetrieveContext 。
CComPtr<IWDFFile> pFileObject;
...
// Get the Context map for this client
pRequest->GetFileObject(&pFileObject);
if (pFileObject != NULL)
{
hr = pFileObject->RetrieveContext((void**)&pClientContextMap);
CHECK_HR(hr, "Failed to get Contextmap from WDF File Object");
}
要求
要求 | 值 |
---|---|
结束支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.5 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |