Problems of auto mapping of profiles with outlook 2010.

Murali ReddyExchange Expert
Automapping, a wonderful feature with Exchange 2010 (SP2 onwards I believe), allows additional/Shared mailboxes that a user has access to be automatically mapped on Outlook client, simplifying the process by adding them while Outlook launches.

However, this may not be an advantage all the time especially if a user has full access permissions to many other mailboxes. All of those additional mailboxes will need to be mapped and opened when Outlook is opened. It will definitely take time to load all the mailboxes and hence will cause performance issues.

There are other problems too. I’ll discuss one issue I personally faced: A user having access to multiple mailboxes.
  • Outlook looks to be in connected state, but the folders are not updated.
  • Send will work, but receive will not.
  • On restart, Outlook tries to sync initially, but stops syncing in the very next minute, as there are limitations on the number of objects that can be loaded.
You’ll see the event 9646 filling whole event log on the mailbox server hosting the user's mailbox.

4--9646-error-in-detail.pngYou may increase the MapiSession limits to have this suppressed, but at the cost of Exchange's and the Outlook client’s performance.
Reference -
Create the key MaxObjsPerMapiSession and DWORDS objtFolder and objtFolderView with a decimal value greater than the default value (500), say 1000. No service/Server restart required.
However, I’m suggesting a way to remove the automapping for all those unwanted or for all mailboxes if none of them are need to be mapped.

You want to delete the automapping completely for all the mailboxes for a specific user (DN), especially for admins who are automatically granted permissions at times. Get the Distinguished Name of the affected user and run the following command to check which mailboxes a user (DN = "CN=Name,OU=,OU=OUName,DC=domain,DC=com") has auto-mapping rights to.
Import-Module activedirectory
                      Get-ADUser -Properties * -Filter * |Where-Object {$_.msExchDelegateListLink -like "CN=Name,OU=,OU=OUName,DC=domain,DC=com"} |select Name,msExchDelegateListLink |Export-Csv msExchDelegateListLink.csv

Open in new window

To remove auto mapping for that DN, for all mailboxes -
Import-Module activedirectory
                      Get-ADUser -Properties * -Filter * |Where-Object {$_.msExchDelegateListLink -like "CN=Name,OU=,OU=OUName,DC=domain,DC=com"} |Set-ADUser -Remove @{msExchDelegateListLink = "CN=Name,OU=,OU=OUName,DC=domain,DC=com"}

Open in new window

Or If you’d like to remove auto mapping from a limited set of mailboxes:

From the first step extracted CSV, remove the mailboxes that you want to keep and save it. Now read that csv for all others mailbox instance to remove them from being auto mapped. Like,
Import-Module activedirectory
                      $temp = import-csv C:\path\msExchDelegateListLink.csv
                      Foreach ($i in $temp) {
                      Get-ADUser $i.MailboxName -Properties * |Set-ADUser -Remove @{msExchDelegateListLink = "CN=Name,OU=,OU=OUName,DC=domain,DC=com"}

Open in new window

Restart the Outlook client for the changes to take effect.
I did it along with this writing, and hurray!!!... my profile is now clean and started to sync soon. Event viewer (ID - 9646) is also clean. I don’t love to have my name logged multiple times on the server J ..

Another way to do it is I think this takes too much time and user input to confirm for each mailbox and each instance of access. I tried and tired by removing one single instance, too many clicks.

So thought of finding a different way and I found my own approach. Fast, quick and YES safe. It will not impact other delegates, and is only applied to the mentioned DN.
Hope this helped you :) :) ..
Cheers, T M K (Murali Reddy)

Comments (0)

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.