Example: Distribution List

This example shows how to provision an Exchange 2000 or Exchange 2003 distribution list object.

Attribute Inclusion List

You must select the following attributes from the Select Attributes property page for your Active Directory management agent to provision an Exchange distribution list:

  • mailNickname
  • groupType

The following example shows how to use a rules extension to provision an Exchange distribution list.Be sure to add a reference to logging.dll to use the LogException method.

    Public Sub Provision(ByVal mventry As MVEntry) _
        Implements IMVSynchronization.Provision
    
        Dim adMA As ConnectedMA
        Dim csentry As CSEntry
        Dim nickName As String
        Dim dn as ReferenceValue
    
        try
            adMA     = mventry.ConnectedMAs("Fabrikam AD MA")
    
            nickName = mventry("mailNickname").Value
    
            ' Construct the distinguished name
            dn = adMA.EscapeDNComponent("CN=" + mventry("cn").Value).Concat("ou=mailboxes,dc=fabrikam,dc=com")
    
            If 0 = adMA.Connectors.Count then
                csentry = ExchangeUtils.CreateDistributionlist(adMA, dn, nickName)
            End If
    
            ' Log and rethrow any exception
            Catch ex As Exception
                Logging.Logging.LogException(ex, "Provision", "Caught exception", False)
                Throw
        End Try
    End Sub
    void IMVSynchronization.Provision (MVEntry mventry)
    {
        ConnectedMA adMA;
        CSEntry csentry;
        String nickName;
        ReferenceValue dn;
    
        try
        {
            adMA = mventry.ConnectedMAs["Fabrikam AD MA"];
    
            nickName   = mventry["mailNickname"].Value;
    
            // Construct the distinguished name
            dn = adMA.EscapeDNComponent("CN=" + mventry["cn"].Value).Concat("ou=mailboxes,dc=fabrikam,dc=com");
    
            if(0 == adMA.Connectors.Count)
            {
                csentry = ExchangeUtils.CreateDistributionlist(adMA, dn, nickName);
            }
        }
    
        // Log and rethrow any exception
        catch(Exception ex)
        {
            Logging.Logging.LogException(ex, "Provision", "Caught exception", false);
            throw;
        }
    }

See Also

CreateDistributionlist(ConnectedMA,ReferenceValue,String)

Send comments about this topic to Microsoft

Build date: 2/16/2009