Getting a List of All Servers in the Administrative Group

Getting a List of All Servers in the Administrative Group

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

The following example returns a list of all the installed servers in the domain. The example uses a function for Getting a List of Objects In a Container.

Visual Basic

'//////////////////////////////////////////////////////////////////////
' Function: getInstalledServerList()
' Purpose:  Returns a list of all servers in the administrative group.
'
' Input:    szDomainName:               Domain of the Exchange organization
'           szOrganizationName:         Name of Exchange Organization
'           szAdministrativeGroupName:  Name of Administrative Group
'           szUserName:                 Admin Username
'           szUserPwd:                  Admin pwd
'           szDirectoryServer:          Name of the Directory Server
'
' Output:   getInstalledServerList:     Contains Error code (if any)
'           szServerList:               List of servers
'
' Note:  In order for this example to function correctly, it may be necessary to include
' references to the following libraries: Active DS Type Library, Microsoft CDO for
' Exchange Management Library, Microsoft Cluster Service Automation Classes,
' Microsoft CDO for Windows 2000 Library.
'//////////////////////////////////////////////////////////////////////
Public Function getInstalledServerList(ByVal szDomainName As String, _
                                       ByVal szOrganizationName As String, _
                                       ByVal szAdministrativeGroupName As String, _
                                       ByVal szUserName As String, _
                                       ByVal szUserPwd As String, _
                                       ByRef szServerList As String, _
                                       ByVal szDirectoryServer) As Integer

    ' Returns a list of all the installed servers in the domain.

    Dim szConnString As String
    Dim szaDomTokens() As String
    Dim szDomainDN As String

    On Error GoTo errhandler

    ' Put the domain name into an ldap string.
    szaDomTokens = Split(szDomainName, ".", -1, 1)
    szDomainDN = Join(szaDomTokens, ",dc=")
    szDomainDN = "dc=" & szDomainDN

    ' Build up the ldap connection string.

    szConnString = "LDAP://" + szDirectoryServer + "/cn=servers,cn=" + _
                   szAdministrativeGroupName + ",cn=Administrative Groups,cn=" + _
                   szOrganizationName + ",cn=Microsoft Exchange,cn=services,cn=configuration," + _
                   szDomainDN

    ' Get a list of msExchExchangeser objects in the organization.
    getObjectList szUserName, _
                  szUserPwd, _
                  szConnString, _
                  "msExchExchangeServer", _
                  szServerList

    getInstalledServerList = 0
    Exit Function

    ' Error handling.
errhandler:

    getInstalledServerList = 1
    ' Implement error logging here.
    Exit Function

End Function

Send us your feedback about the Microsoft Exchange Server 2003 SDK.

Build: June 2007 (2007.618.1)

© 2003-2006 Microsoft Corporation. All rights reserved. Terms of use.