The IADsExtension interface forms the basis of the ADSI application extension model. It enables an independent software vendor (ISV) to add application-specific behaviors, such as methods or functions, into an existing ADSI object. Multiple vendors can independently extend the features of the same object to perform similar, but unrelated operations.
The extension model is based on the aggregation model in COM. An aggregator, or outer object, can add to its base of methods, those of an aggregate object, or inner object. An ADSI extension object, which implements the IADsExtension interface, is an aggregate object, whereas an ADSI provider is an aggregator.
Note When implementing an extension module, release an interface when finished with it. Otherwise, the aggregator cannot release the interface even when no longer required.
The IADsExtension interface can be used as follows:
The IADsExtension interface inherits the methods of the standard COM interface IUnknown.
In addition, IADsExtension defines the following methods.
|Operate||Performs the specified extended operation.|
|PrivateGetIDsOfNames||Maps the name(s) to a DISPID.|
|PrivateInvoke||Invokes methods of the extended object.|
Client: Included in Windows XP and
Windows 2000 Professional.
Server: Included in Windows Server 2003 and Windows 2000 Server.
Redistributable: Requires Active Directory Client Extension on Windows NT 4.0 SP6a and Windows 95/98/Me.
Header: Declared in Iads.h.