Partager via


Interface IADsExtension (iads.h)

L’interface IADsExtension constitue la base du modèle d’extension d’application ADSI. Il permet à un éditeur de logiciels indépendant (ISV) d’ajouter des comportements spécifiques à l’application, tels que des méthodes ou des fonctions, dans un objet ADSI existant. Plusieurs fournisseurs peuvent étendre indépendamment les fonctionnalités du même objet pour effectuer des opérations similaires, mais non liées.

Le modèle d’extension est basé sur le modèle d’agrégation dans COM. Un agrégateur, ou objet externe, peut ajouter à sa base de méthodes, celles d’un objet d’agrégation ou d’un objet interne. Un objet d’extension ADSI, qui implémente l’interface IADsExtension , est un objet d’agrégation, tandis qu’un fournisseur ADSI est un agrégateur.

Note Lorsque vous implémentez un module d’extension, relâchez une interface lorsque vous en avez terminé. Sinon, l’agrégateur ne peut pas libérer l’interface même quand il n’est plus nécessaire.
 
L’interface IADsExtension peut être utilisée comme suit :
  • Le composant d’extension nécessite une notification d’initialisation telle que définie par dwCode dans la méthode Operate . Dans ce cas, un client d’extension doit appeler la méthode Operate . Les deux autres méthodes, à savoir PrivateInvoke et PrivateGetIDsOfNames, retournent généralement E_NOTIMPL dans la valeur HRESULT .
  • Le composant d’extension prend en charge n’importe quelle interface double ou de répartition. Dans ce cas, un client d’extension doit appeler les méthodes PrivateGetIDsOfNames ou PrivateInvoke . L’opération ignore généralement les données et retourne E_NOTIMPL dans la valeur HRESULT .

Héritage

L’interface IADsExtension hérite de l’interface IUnknown. IADsExtension a également les types de membres suivants :

Méthodes

L’interface IADsExtension a ces méthodes.

 
IADsExtension::Operate

Interprète le code de contrôle et les paramètres d’entrée en fonction des spécifications du fournisseur.
IADsExtension::P rivateGetIDsOfNames

La méthode IADsExtension::P rivateGetIDsOfNames est appelée par l’agrégateur, ADSI, après qu’ADSI a déterminé que l’extension est utilisée pour prendre en charge une interface double ou de répartition. La méthode peut utiliser les données de type pour obtenir DISPID à l’aide de IDispatch::GetIDsOfNames.
IADsExtension::P rivateInvoke

La méthode IADsExtension::P rivateInvoke est normalement appelée par ADSI après la méthode IADsExtension::P rivateGetIDsOfNames. Cette méthode peut avoir une implémentation personnalisée ou déléguer l’opération à la méthode IDispatch::D ispInvoke.

Configuration requise

   
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête iads.h