QueryDispatchInterface 方法返回指向对象上不同接口的调度指针,给定其 GUID 和对象上另一个接口的调度指针。
语法
HRESULT QueryDispatchInterface(
[in] BSTR pIID,
[in] IDispatch *pInterfaceToMap,
[out] IDispatch **ppReturnedInterface
);
参数
[in] pIID
指向所需接口的 GUID 的 BSTR 表示形式的指针。
[in] pInterfaceToMap
启动接口的 IDispatch 指针。
[out] ppReturnedInterface
接口的 IDispatch 指针对应于 pIID 中包含的 GUID。
返回值
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
内存不足,无法执行操作。 |
|
pIID 参数不是有效的 BSTR,或者不会转换为有效的 GUID。 |
|
请求的接口未公开,或者对象不实现 IObjectSafety 接口。 |
注解
应用程序必须使用 SysAllocString 为 pIID 参数分配内存,并在不再需要变量时使用 SysFreeString 释放内存。
Dispatch Mapper 将使用对象的 IObjectSafety 接口来确保对象安全地在请求的接口上编写脚本。 如果对象未实现 IObjectSafety,或者对象在此特定接口上不安全,则调用将失败。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | tapi3if.h (包括 Tapi3.h) |
Library | Uuid.lib |
DLL | Tapi3.dll |