選擇搜尋技術
下表所列的技術可用來搜尋 Active Directory 網域服務。
技術 | 描述 |
---|---|
DirectorySearcher |
DirectorySearcher 類別是由 System.DirectoryServices 命名空間提供,以允許使用 .NET Framework 在 Active Directory 網域服務 內搜尋。 如需詳細資訊,請參閱 搜尋目錄。 |
IDirectorySearch |
ADSI 提供 IDirectorySearch 介面來查詢 Active Directory 伺服器,以及使用 LDAP 的其他目錄服務,例如 NDS。 IDirectorySearch 是一種 COM 介面,可傳回豐富類型的數據,例如 Integer、Octet String、String、Security Descriptor、UTC-Time、Large Integer 或 Boolean。 如需如何使用 IDirectorySearch 的詳細資訊,請參閱 使用 IDirectorySearch 介面進行搜尋。 |
OLE DB |
OLE DB 是一組 COM 介面,可為應用程式提供不同數據源中所儲存數據的統一存取權,而不論位置或類型為何。 ADSI 也提供適用於 ADSI 的 OLE DB 提供者,可讓應用程式使用 OLE DB 來存取 Active Directory 網域服務。 ADSI OLE DB 提供者會使用 IDirectorySearch 介面來提交查詢,以 Active Directory 網域服務 並收集結果。 |
ADO 和其他以 OLE DB 為基礎的數據存取技術 |
ADSI OLE DB 提供者可讓以 OLE DB 為基礎的任何數據存取技術,例如 ADO,在 Active Directory 網域服務 內搜尋。 |
LDAP API |
Windows 2000 域控制器是符合 LDAP 第 3 版的目錄伺服器。 LDAP API是 C 樣式函式連結庫。 應用程式可以使用LDAP API在 Active Directory 網域服務內搜尋。 |
選擇技術時,請考慮下列事項:
- 針對 Microsoft Visual Basic 和 Visual Basic Scripting Edition (VBScript),建議使用 ADO。
- 針對 C/C++,您可以選擇任何技術。
- 如果您的應用程式廣泛使用 ADSI,則使用 IDirectorySearch 可能更簡單。 如果您使用 IDirectoryObject 來管理 Active Directory 網域服務 中的物件,請使用 IDirectorySearch 來處理從搜尋傳回的屬性變得更容易。 IDirectorySearch 使用與 IDirectoryObject 相同的 ADSVALUE 結構來表示屬性。 此外, 幾乎所有 ADSI COM 物件上都會公開 IDirectorySearch 。 如果您有 ADSI COM 物件的指標,您可以呼叫 QueryInterface 來取得 IDirectorySearch 指標,以便從 ADSI COM 物件所代表的目錄對象開始執行搜尋。
- 如果您的應用程式已經使用 OLE DB、ADO 或 LDAP API,您可以繼續使用這些技術在 Active Directory 網域服務 內搜尋。
- 如果您的應用程式必須聯結來自 Active Directory 網域 服務和 SQL Server 7 資料庫的數據,請使用 OLE DB。 藉由使用 OLE DB,您的應用程式可以執行分散式查詢,從一或多個 Microsoft SQL Server 7 資料庫參考 Active Directory 網域服務 和數據表和數據列集。