IADsExtension 接口 (iads.h)
IADsExtension 接口构成了 ADSI 应用程序扩展模型的基础。 它允许独立软件供应商 (ISV) 将特定于应用程序的行为(如方法或函数)添加到现有 ADSI 对象中。 多个供应商可以独立扩展同一对象的功能,以执行类似但不相关的操作。
扩展模型基于 COM 中的聚合模型。 聚合器或外部对象可以添加到其方法基、聚合对象或内部对象的方法。 实现 IADsExtension 接口的 ADSI 扩展对象是聚合对象,而 ADSI 提供程序是聚合器。
注意 实现扩展模块时,请在完成该模块后释放接口。 否则,即使不再需要,聚合器也无法释放接口。
- 扩展组件需要由操作方法中的 dwCode 定义的初始化通知。 在这种情况下,扩展客户端必须调用 操作 方法。 其他两种方法(即 PrivateInvoke 和 PrivateGetIDsOfNames)通常返回 HRESULT 值中的E_NOTIMPL。
- 扩展组件支持任何双接口或调度接口。 在这种情况下,扩展客户端必须调用 PrivateGetIDsOfNames 或 PrivateInvoke 方法。 操作通常忽略数据,并返回 HRESULT 值中的E_NOTIMPL。
继承
IADsExtension 接口继承自 IUnknown 接口。 IADsExtension 还具有以下类型的成员:
方法
IADsExtension 接口具有这些方法。
IADsExtension::操作 根据提供程序的规范解释控制代码和输入参数。 |
IADsExtension::P rivateGetIDsOfNames IADsExtension::P rivateGetIDsOfNames 方法由聚合器 ADSI 调用,然后 ADSI 确定该扩展用于支持双重接口或调度接口。 方法可以使用类型数据通过 IDispatch::GetIDsOfNames 获取 DISPID。 |
IADsExtension::P rivateInvoke IADsExtension::P rivateInvoke 方法通常由 ADSI 在 IADsExtension::P rivateGetIDsOfNames 方法之后调用。 此方法可以具有自定义实现,也可以将操作委托给 IDispatch::D ispInvoke 方法。 |
要求
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | iads.h |