IUnknown_QueryService 函数 (shlwapi.h)
从指定的 对象检索服务的接口。
语法
LWSTDAPI IUnknown_QueryService(
[in] IUnknown *punk,
[in] REFGUID guidService,
[in] REFIID riid,
[out] void **ppvOut
);
参数
[in] punk
类型: IUnknown*
指向支持服务的 COM 对象的 IUnknown 实例的指针。
[in] guidService
类型: REFGUID
服务的唯一标识符 (SID) 。
[in] riid
类型: REFIID
所需服务接口的 IID。
[out] ppvOut
类型: void**
此方法返回时,包含请求的接口指针 riid。 如果成功,调用应用程序负责在不再需要服务时使用此值调用 IUnknown::Release 。 如果失败,此值为 NULL。
返回值
类型: HRESULT
如果成功 , 则返回S_OK。 如果对象不支持 IServiceProvider,则返回E_FAIL。 否则,该函数返回对象的 QueryService 方法返回的 HRESULT。
注解
如果在 punk 参数中传递的对象支持 IServiceProvider 接口,则调用其 QueryService 方法,传递 guidService、 riid 和 ppvOut 参数并传播返回值。 否则,函数将返回E_FAIL。
对于 Shlwapi.h 中不包含 IUnknown_QueryService 的 Windows 版本,必须使用序号 176 直接从 Shlwapi.dll 调用此函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server、Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | shlwapi.h |
DLL | Shlwapi.dll (5.0 或更高版本) |