如何列舉連接的站台 (& I) 中使用 ADSI 的 Exchange 伺服器

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:200726
本文已封存。本文係以「現狀」提供且不會再更新。
結論
在 Visual Basic 中下列的範例程式碼說明使用 ADSI LDAP 提供者物件來列舉所有已連線的站與 Exchange 組織中的伺服器。若要使用這個程式碼,您必須至少一個 Exchange 5.5 伺服器已連線的站台中。 您也應該有執行最新 ADSI 用戶端階段 (版本 2.0 版或更佳) 安裝在您的系統。
其他相關資訊

重製行為的步驟

  1. 開啟新的 標準 EXE Visual Basic 專案
  2. 新增 模組
  3. 使用中的 DS 型別程式庫 的參考。
  4. 設定為 [Sub Main啟始物件
  5. 複製並貼入 模組 中的下列範例程式碼:
' Sample to enumerate sites and servers in an Exchange Organization' using ADSi objects   Option Explicit   Sub Main()   Dim objOrg As IADsContainer   Dim objOU As IADsContainer   Dim objConfig As IADsContainer   Dim objServers As IADsContainer   Dim obj As IADs   ' Replace "Server" with the name of any Exchange 5.5 server in one of   ' the connected sites you want to enumerate.   Set objOrg = GetObject("LDAP://Server")   Debug.Print objOrg.Name   ' filter passes organizationalUnit and any classes derived from it   ' such as View-Root   objOrg.Filter = Array("organizationalUnit")   For Each objOU In objOrg    With objOU    ' Test that the most derived class is organizationalUnit    If objOU.Class = "organizationalUnit" Then        Debug.Print "Site: " + .Name        objOU.Filter = Array("Container")        For Each objConfig In objOU            With objConfig            ' Test for cn=Configuration (root container)            If .Name = "cn=Configuration" Then                ' In case configuration might have non-containers                .Filter = Array("Container")                For Each objServers In objConfig                    With objServers                    ' Test for cn=Servers inside of Configuration container                    If .Name = "cn=Servers" Then                        .Filter = Array("Computer")                        For Each obj In objServers                            With obj                            Debug.Print Chr(9) & "Server: " & .Name                            Debug.Print Chr(9) & "ADsPath: "; .ADsPath                            End With                        Next obj                    End If                    End With                Next objServers            End If            End With        Next objConfig    End If    End With   Next objOU   Debug.Print "End Enumeration"   End Sub				
参考
ADSI 2.0 版的資訊併入 MSDN] 的 [平台 SDK] 區段,在十月 1997年之後。ADSI 則也可以使用下列的 Web 站台上: http://msdn.microsoft.com/en-us/library/aa772170.aspx

警告:本文為自動翻譯

內容

文章識別碼:200726 - 最後檢閱時間:01/05/2015 08:45:37 - 修訂: 4.0

Microsoft Platform Software Development Kit-January 2000 Edition, Microsoft Visual Basic 5.0 Learning Edition, Microsoft Visual Basic 5.0 Professional Edition, Microsoft Visual Basic 5.0 Enterprise Edition, Microsoft Exchange Server 2003 Software Development Kit, Microsoft Exchange Server 5.5 Standard Edition, Microsoft Active Directory Service Interfaces 2.0

  • kbnosurvey kbarchive kbmt kbdswmanage2003swept kbapi kbhowto kbmsg KB200726 KbMtzh
意見反應