Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This example shows how to provision an Exchange 5.5 mailbox object.
Attribute Inclusion List
You must select the following attributes from the Select Attributes property page for your your Exchange 5.5 management agent to provision an Exchange 5.5 mailbox:
- uid
- cn
- rdn
- mailPreferenceOption
- rfc822Mailbox
- textEncodedORaddress
- MAPI-Recipient
- Home-MDB
- Home-MTA
- Assoc-NT-Account
- NT-Security-Descriptor
The following example shows how to use a rules extension to provision an Exchange 5.5 mailbox. 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 ex55MA As ConnectedMA
          Dim csentry As CSEntry
          Dim nickName, displayName, smtpAddress, orAddress, mailboxMDB, mailboxMTA As String
          Dim ntAccount As Byte()
          Dim dn As ReferenceValue
    
          Try
             If "person" = mventry.ObjectType Then
    
                ex55MA = mventry.ConnectedMAs("Fabrikam Ex55 MA")
    
                nickName    = mventry("mailNickname").Value
                displayName = mventry("DisplayName").Value
                smtpAddress = mventry("SMTPAddress").Value
                orAddress   = mventry("ORaddress").Value
                mailboxMDB  = mventry("homeMDB").Value
                mailboxMTA  = mventry("homeMTA").Value
                ntAccount   = mventry("objectSID").BinaryValue
    
                ' Construct the distinguished name
                dn = ex55MA.EscapeDNComponent("CN=" + mventry("cn").Value).Concat("cn=Recipients,ou=fabrikam,o=com")
    
                If 0 = ex55MA.Connectors.Count Then
                   csentry = ExchangeUtils.Create55Mailbox(ex55MA, dn, nickName, displayName, smtpAddress, orAddress, mailboxMDB, mailboxMTA, ntAccount)
                End If
    
             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 ex55MA;
              CSEntry csentry;
              String nickName, displayName, orAddress, smtpAddress, mailboxMDB, mailboxMTA;
              byte[] ntAccount;
              ReferenceValue dn;
    
              try
              {
                 if( "person" == mventry.ObjectType )
                 {
                    ex55MA = mventry.ConnectedMAs["Fabrikam Ex55 MA"];
    
                    nickName    = mventry["mailNickname"].Value;
                    displayName = mventry["DisplayName"].Value;
                    smtpAddress = mventry["SMTPAddress"].Value;
                    ntAccount   = mventry["objectSID"].BinaryValue;
                    orAddress   = mventry["ORaddress"].Value;
                    mailboxMDB  = mventry["homeMDB"].Value;
                    mailboxMTA  = mventry["homeMTA"].Value;
    
                    // Construct the distinguished name
                    dn = ex55MA.EscapeDNComponent("CN=" + mventry["cn"].Value).Concat("cn=Recipients,ou=fabrikam,o=com");
    
                    if(0 == ex55MA.Connectors.Count)
                    {
                       csentry = ExchangeUtils.Create55Mailbox(ex55MA, dn, nickName, displayName, smtpAddress, orAddress, mailboxMDB, mailboxMTA, ntAccount);
                    }
                 }
              }
    
              // Log and rethrow any exception
              catch(Exception ex)
              {
                 Logging.Logging.LogException(ex, "Provision", "Caught exception", false);
                 throw;
              }
           }
See Also
Create55Mailbox(ConnectedMA,ReferenceValue,String,String,String,String,String,String,Byte[])
Send comments about this topic to Microsoft
Build date: 2/16/2009