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时,框架会递增接口上的引用计数。 驱动程序负责在接口指针完成后释放引用。 为此,可以使用智能指针在对象退出上下文时自动递减引用计数,或者在完成作时调用接口上的 发布。
例子
下面的代码示例取自 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 |