Làm thế nào để sử dụng ADO để truy cập các đối tượng thông qua một nhà cung cấp ADSI LDAP

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:187529
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
TÓM TẮT
Hoạt động thư mục dịch vụ nhẹ giao diện (ADSI)Directory Access Protocol (LDAP) mà nhà cung cấp thực hiện OLE DB giao diện màcho phép bạn sử dụng ActiveX Data Objects (ADO) để truy cập các đối tượng trong LDAPtuân thủ thư mục. Bạn cần phải tạo một ADO đối tượng kết nối và thiết lập của nóNhà cung cấp tài sản để "adsdsoobject". Bạn có thể xác định bất kỳ chuỗi, bao gồm cả"", như chuỗi kết nối (đối số đầu tiên) kết nối ADOphương pháp mở của đối tượng.

Phương đối tượng thi công thức kết nối của CommandText (đầu tiên) là mộtLDAP truy vấn bao gồm bốn yếu tố cách nhau bằng dấu chấm phảy, trong cácđịnh dạng sau:
   <LDAP://server/adsidn>;ldapfilter;attributescsv;scope				
nơi:
  • máy chủ là tên (hoặc địa chỉ IP) của máy chủ lưu trữ các thư mục.
  • adsidn là tên phân biệt (DN) là điểm khởi đầu cho bạn truy vấn bày tỏ ADsPath định dạng với "/" tách và gốc của các không gian tên bên trái. Bạn cũng có thể sử dụng một X.500 phong cách quy cho tên định dạng với tên phân biệt tương đối cách nhau bằng dấu phẩy và các gốc của không gian tên bên phải.
  • 1dap lọc là chuỗi lọc LDAP (xem rfc2254).
  • attributescsv là một danh sách dấu phẩy ngăn cách tên thuộc tính để được trả lại cho mỗi hàng năm recordset.
  • phạm vi là một trong hai: base, onelevel, hoặc subtree.
LƯU Ý: rfc2253 xác định cách LDAP mà trên đó cú pháp ADSI LDAP dựa.

Để trở về thuộc tính ADsPath, lớp học, và cn của tất cả các đối tượng trong tất cả cáccác thùng chứa người nhận trong một máy chủ Exchange, bạn có thể sử dụng sau đâyCommandText (ở định dạng URL):
      LDAP:<//server/o=organization/ou=site/cn=recipients>;         (objectClass=*);ADsPath,objectClass,cn;subtree"				
hoặc (trong quy định dạng tên):
     <LDAP://server/cn=recipients,ou=site,o=organization>, _         (objectClass=*);ADsPath,objectClass;subtree				
THÔNG TIN THÊM
Visual Basic mẫu mã sau đây minh hoạ truy vấn này:

Mẫu mã

  Dim conn As ADODB.Connection      Dim rs As ADODB.Recordset      Set conn = New ADODB.Connection      conn.Provider = "ADSDSOObject"      conn.Open "ADs Provider"      Set rs = conn.Execute( _             "<LDAP://server/o=organization/ou=site/cn=recipients>;" _            & "(objectClass=*);ADsPath,objectClass,cn;subtree")      While Not rs.EOF         Debug.Print rs.Fields(0).Value, rs.Fields(1).Value, _               rs.Fields(2).Value         rs.MoveNext      Wend      conn.Close				
THAM KHẢO
Để có một danh sách và giải thích về phổ biến LDAP RFCs, bao gồm cả RFC 2253 và RFC 2254, xin vui lòng xem bài viết sau trong cơ sở kiến thức Microsoft:
221606 Phổ biến LDAP RFCs
Để biết thêm chi tiết, bấm vào số bài viết dưới đây để xem bài viết trong cơ sở kiến thức Microsoft:
275917 PRB: ADSI 2,5 và MDAC 2.6 di tương thích vấn đề

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 187529 - Xem lại Lần cuối: 12/05/2015 08:46:31 - Bản sửa đổi: 2.0

Microsoft Visual Basic 5.0 Professional Edition, Microsoft Visual Basic 6.0 Professional Edition, Microsoft Visual Basic 5.0 Enterprise Edition

  • kbnosurvey kbarchive kbhowto kbmdacnosweep kbtophit kbmt KB187529 KbMtvi
Phản hồi
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)