Interaksi Komponen ADSI

Komponen router Direktori Aktif mengisi tabel penyedia ADSI dari penyedia ADSI yang diinstal yang tercantum dalam registri saat menerima permintaan pertama dari aplikasi klien. Untuk informasi selengkapnya tentang Registri, lihat Menginstal Komponen Penyedia Contoh.

Operasi yang membuat permintaan dari direktori untuk penunjuk ke antarmuka pada objek Direktori Aktif datang melalui fungsi (GetObject di Visual Basic atau ADsOpenObject atau ADsGetObject di C atau C++), atau metode antarmuka ( IADsContainer::GetObject). Pada gambar berikut, aplikasi klien ADSI meneruskan permintaan ikatan tersebut ke komponen router ADSI (1). Komponen router mengidentifikasi ProgID untuk penyedia dari bagian pertama ADsPath dan menggunakan CLSIDFromProgID untuk menemukan CLSID yang cocok di registri (2) dan memuat komponen penyedia yang tepat (3).

adsi component interactions in the example provider

Pada gambar sebelumnya, komponen penyedia membuat objek Direktori Aktif yang mewakili elemen direktori bernama. Komponen dukungan ADSI melakukan QueryInterface pada pengidentifikasi antarmuka yang diminta. Ketika pointer ke antarmuka tersebut diambil (4), seperti semua implementasi klien/server COM, itu kemudian diteruskan kembali ke klien (5), dan sejak saat itu aplikasi klien bekerja langsung dengan komponen penyedia (6).