Condividi tramite


Come ADSI integra le estensioni

Le linee guida seguenti descrivono come ADSI interagisce con le estensioni:

  • Un elemento viene associato a un oggetto directory ADSI. Ad esempio, "LDAP://CN=JeffSmith,OU=Sales,DC=Fabrikam,DC=COM".
  • ADSI identifica che l'oggetto si trova nella classe utente .
  • ADSI esegue una ricerca nel Registro di sistema e identifica i CLSID dell'estensione per l'utente. Tenere presente che ADSI memorizza nella cache questi dati.
  • Un elemento chiama il metodo QueryInterface per IID_IMyExtension. ADSI cerca le interfacce associate all'oggetto utente , a partire dalle proprie interfacce, quindi esaminando le interfacce di estensione.
  • Se viene trovata una corrispondenza, ADSI crea un'istanza del componente che supporta IID_IMyExtension e chiama QueryInterface per l'estensione. Viene restituita l'interfaccia risultante.
  • L'utente usa questa interfaccia per chiamare i metodi di interfaccia.
  • Il client chiama quindi QueryInterface per IID_IYourExtension, che si trova in un componente diverso. Questo componente delega questa chiamata QueryInterface all'interfaccia IUnknown dell'aggregatore, che si verifica come ADSI stessa.
  • Anche in questo caso, ADSI cerca le interfacce e crea l'istanza del componente.