As i told before, it’s not that easy to make changes with powershell to your Exchange 2003 environment as it is nowadays with Exchange 2010.
Since it was pretty hard to read certain values from Active Directory, i’m doing a pretty nasty trick: copy the values from an existing user.
Here’s how to create a mailbox for an existing user:
function add_exchange2003_mailbox_for_user($username) { # to keep it simple: let's copy the properties of a template user, e.g. Administrator, and create the mailboxes in the same database $template_user = "Administrator" $userproperties = get-qaduser -identity $template_user -IncludeAllProperties set-qaduser -identity $username -objectAttributes @{msExchHomeServerName=$userproperties.MsExchHomeServerName} set-qaduser -identity $username -objectAttributes @{mailnickname="$username"} set-qaduser -identity $username -objectAttributes @{mDBUseDefaults='TRUE'} set-qaduser -identity $username -objectAttributes @{homeMBD=$userproperties.homeMDB} # now the Recipient Update Service will do the rest ... }