Exchange Tools

Here I’ll share some free tools that can help simplify Microsoft Exchange deployment, troubleshooting, and administration. Some of the tools are simple—but still convenient—whereas others provide some powerful functionality.

There are some tools you can use during deployment to ease the process and reduce issues in the future, tools you can use for troubleshooting to reduce down-times, and tools you can use during day-to-day administration to monitor server health and perform tasks.

Microsoft Exchange Server Deployment Assistant

Microsoft’s Exchange Server Deployment Assistant is an online tool that produces a custom step-by-step checklist you can utilize during a server installation or upgrade. It first asks you questions about your current and desired deployment environment, such as the deployment type (on-premise, cloud, or hybrid), migration questions, desired features/functionality, and other miscellaneous caveats that impact the installation or upgrade.

Microsoft Remote Connectivity Analyzer

Microsoft’s Remote Connectivity Analyzer is a website with many tools to help test and troubleshoot connectively of Exchange servers, Outlook, Lync, OCS, Office 365, and POP, IMAP, and STMP email. Plus it offers downloadable Connectivity Analyzer Tools for local testing and a message header analyzer.

PFDAVAdmin and ExFolders
These are tools that enable you to perform tasks on Exchange public folders and mailboxes, such as checking or changing permissions. It can also connect to mailboxes, check the contents, and generate reports. PFDAVAdmin is for Exchange 2000, 2003, and 2007 and ExFolders is the updated version for Exchange 2007 and 2010 SP1 and later.


The Jetstress tool simulates disk I/O load on your server, allowing you to specify the amount of simulated Exchange users and profiles. This can help you verify the performance and stability of your server before installing Exchange and putting it into production-use.

Exchange Server Role Requirements Calculators

These are calculator tools that give sizing recommendations for your particular Exchange server roles for both client access and mailbox. The 2010 version is focused on mailbox calculations while the 2013 version includes recommendations on sizing Client Access servers too.

Exchange Environment Report

This Exchange Environment Report tool is from Steve Goodman and is a PowerShell script that generates an automatic overview of your Exchange environment. It supports Exchange 2003, 2007, 2010 and 2013 servers and database availability groups. It reports the number of and details about the servers, mailboxes, roles, and versions. It also gives you useful status on the Database Availability Groups (DAG) and non-DAG databases.

Exchange Reports

Exchange Reports offers reports on overall information about your Exchange Environment, supporting Exchange 2010 & Exchange 2013. You can keep an eye on configuration changes and status with Group Reports, Single Group Information, Mailbox Report, Single Mailbox Information, Message Tracking, and Environment Report.

The program doesn’t require any installation, but requires .Net 4.0, Powershell 2.0, and Remote Powershell access to the Exchange Server. Reports can be saved in history and also exported to Excel.

Microsoft Exchange Server MAPI Editor (MFCMAPI)

Microsoft’s Microsoft Exchange Server MAPI Editor (MFCMAPI) tool provides access to MAPI stores, useful when troubleshooting Exchange and Outlook issues, which can serve as a replacement to the old Microsoft Exchange Server Information Store Viewer. You can open and navigate through the message stores that are exposed through MAPI.

Free Exchange Monitor

The Free Exchange Monitor from SolarWinds supports Microsoft Exchange Server 2000 and 2003. It keeps tabs on the Exchange server stats, services, mail queue sizes, and host server health. In addition to notifying you of outages it can be useful in troubleshooting Exchange server problems and even help with pro-active monitoring, for instance detecting growing mail queues that can indicate bigger issues like transport failures, Internet connection failures, and virus activity.

Free Exchange Monitoring

This is another monitoring application, but from ManageEngine and supports Exchange Server 2003, 2007, 2010, and 2013. It gives stats on server health and Exchange services. It also provides details on the client access server, transport, Active Sync counters, and delivery aspects. You can generate real-time performance reports to be downloaded or emailed in PDF format.

Exclaimer Outlook Photos

Exclaimer Outlook Photos can help you import staff photos into the Active Directory so they’ll show up in the Outlook People Pane, SharePoint profile, and on Microsoft Lync. It can auto-match pictures from a batch to names or other data in Active Directory, and even automatically crop and center the photos as well.

Certificate Manager for Exchange 2007

Exchange 2007 enables SSL within IIS by default, but creating and managing SSL certificates via PowerShell commands can be confusing. However, the Certificate Manager for Exchange 2007 from U-BTech eases the process with a GUI.

You can generate an Exchange 2007 Certificate Signing Request and process the Certificate Authority and enable certificates for Exchange 2007 Services (POP, IMAP, SMTP, IIS, UM). Plus you can include additional subject names in a single certificate. It supports import and exporting as well.

Exchange PST Capture

Exchange PST Capture from Microsoft will search your network for PST files and then import those files to mailboxes in your organization. It supports both on-premises Exchange Server 2010 and 2013 and Exchange Online. This tool can help, for instance, during the initial deployment of an Exchange Server, to move local Outlook data files into the Exchange Server.


Increasing simultaneously number of Mailbox moves in Exchange 2010

Sometimes we want to minimize the time required to move all the current mailboxes available on Exchange 2003 / 2007 to Exchange 2010, and for configuring your Exchange 2010 to process high number of mailboxes move simultaneously, we need to change the default configuration, which described as follows:

1. Go to all Exchange 2010 CAS Servers, open the below file in notepad or any file editor:
X:\Program Files\Microsoft\Exchange Server\V1\Bin\MSExchangeMailboxReplication.exe.config

2. Change the below values:

MaxActiveMovesPerSourceMDB = “25″

MaxActiveMovesPerTargetMDB = “25″

MaxActiveMovesPerTargetServer = “25″

3. Save the file and restart the “Microsoft Exchange Replication” service.

Public Folder Migration from Exchange 2003 or 2007 to Exchange 2010

Step 1: Replicating Exchange 2003 or 2007  PF’s to Exchange 2010

Add PF replica’s to an Exchange 2010 Server:

.\AddReplicaToPFRecursive.ps1 -server "Exchange 2003/2007 Server" -TopPublicFolder "\" -ServerToAdd "Exchange 2010 Server"

Replicate the System Folders to an Exchange 2010 Server:

.\AddReplicaToPFRecursive.ps1 -TopPublicFolder "\NON_IPM_Subtree" -ServerToAdd "exchange2010 server”

If you are planning to have multiple Exchange 2010 PF servers, you can repeat the Cmdlet

From the Exchange 2010 server: Update-PublicFolderHierarchy -Server "Exchange 2010 Server"

Step 2: Moving Exchange 2003/2007 PF’s to Exchange 2010

As a last step, after you confirmed that all the PF have been replicated to the Exchange 2010, you can move all replicas from Exchange 2003/2007 to Exchange 2010. The "move all replicas" will actually remove the Exchange 2003/2007 replicas.

To move all Exchange 2003/2007 replicas to Exchange 2010, which will actually remove the Exchange 2003/2007 replicas:

.\MoveAllReplicas.ps1 -Server "Exchange 2003 Server" -NewServer "Exchange 2010 Server"

Additional Cmdlets

To view a list of the replicas in the public folder hierarchy: Get-PublicFolder -recurse |fl name,replicas

For System Folders: Get-PublicFolder -recurse \non_ipm_subtree |fl name, replicas

To compare content replicated between the source and destination servers: Get-PublicFolderStatistics


Move Public Folder Content from One Public Folder Database to Another Public Folder Database –

mail-enabled public folders stopped working after installing Exchange 2010 in existing Exchange 2003 or 2007 environment

I recently came across the following issue while performing an Exchange 2007 to Exchange 2010 migration for a company that still heavily utilised mail-enabled public folders. The client’s Exchange environment was quite old and had been previously migrated from Exchange 5.5 to 2003 and hadn’t been properly decommissioned with the original move to 2007, but that’s another story!


The issue I had was that once I moved all receive connectors to the new Exchange 2010 server, emails sent to any of the mail-enabled public folders (which were still being replicated between the 2 servers) was being rejected with the following NDR:

#< #5.2.0 smtp;554 5.2.0 STOREDRV.Deliver.Exception:ObjectNotFoundException; Failed to process message due to a permanent exception with message The Active Directory user wasn’t found. ObjectNotFoundException: The Active Directory user wasn’t found.> #SMTP#

The following error was found in Event Viewer:

Log Name: Application
Source: MSExchange Store Driver
Date: 7/09/2010 2:00:02 AM
Event ID: 1020
Task Category: MSExchangeStoreDriver
Level: Error
Keywords: Classic
User: N/A
Computer: server@domain
The store driver couldn’t deliver the public folder replication message “Folder Content (PublicFolderDatabase@domain)” because the following error occurred: The Active Directory user wasn’t found.


Given this Exchange environment was originally running versions prior to Exchange 2007, the legacy Administrative Group and all its empty subcontainers still existed. An explanation from the Microsoft Exchange Team of why this issue occurs can be found here:

The solution to this issue was to delete the empty Servers container from the legacy Administrative Group.

Using ADSIEdit.msc, connect to a domain controller and navigate to:

CN=Configuration , CN=Services, CN=Microsoft Exchange, CN=[ExchangeOrganisationName], CN=Administrative Groups, CN=[LegacyAdministrativeGroupName], CN=Servers.

Right click the Servers container and select Delete

Click Yes

Restart the Microsoft Exchange Active Directory Topology Service and the Microsoft Exchange Information Store on both the Exchange 2007 & Exchange 2010 Servers

Exchange 2010 SP2 RTM

Exchange Server 2010 Service Pack 2 (SP2) has been released, raising the Exchange version number to You can download Exchange 2010 SP2 here.

For those still unaware, the 530Mb+ file (1,4 GB extracted) contains the full set of binaries; you can use it to upgrade existing RTM or SP1 installations or deploy new Exchange 2010 SP2 installations.

Besides the usual set of hotfixes, SP2 introduces the following features:

Address Book Policies
Address Book Policies, also known as GAL segmentation, ABPs are meant to segmentize the address book, giving users a certain view of the address book like Address List Segregation did for Exchange 2003/2007.

OWA mini
This will be a lightweight browser like OMA in the past, meant for simple browsers.

Hybrid Configuration
This wizard is to make the configuration of an on-premise Exchange and Office 365/Exchange Online more simple, reducing the steps required from 49 to 6.

OWA Cross-Site redirection
This will allow clients to be silently redirected to the proper site if they log on to a CAS server located in a site different than the site where their mailbox is hosted and externalURL has been specified there.

After preparing your forest for Exchange 2010 SP2, the schema version number will have changed. Check the Schema Versions page for information on the new ObjectVersion and RangeUpper values for Exchange 2010 SP2.

Note that SP2 introduces an additional requirement, which is the IIS 6 WMI Compatibility feature; you can add this feature using the GUI or by using the Powershell cmdlets Import-Module ServerManager followed by Add-WindowsFeature Web-WMI.

The proper method to upgrade mailbox servers that are a member of a Database Availability Group is described here.

The releases notes are not available at time of writing; we’ll update this post when they become available.

Concern: Is having Outlook 2003 clients going to prevent me from deploying Exchange 2010

OVERALL STATUS: No, having Oulook 2003 clients is not a deployment blocker. However, you need to understand the following sections and make configuration changes as applicable.

Back since November 9th, 2009 where Exchange Server 2010 released to manufacturing (RTM), there have been a growing concern around whether enterprises are prevented from upgrading or migrating their current Exchange 2003 or Exchange 2007 based messaging infrastructure to Exchange 2010, if Outlook 2003 clients is used within the organization.

But in  this article includes are a few additional concerns about Exchange 2010 and Outlook 2003

Exchange 2010 lack support for UDP Notifications

Exchange 2010 Exchange Server name appears as Instance – <GUID>

Exchange 2010 & Outlook 2003 Offline Address Book (OAB)

Exchange 2010 RPC over HTTP Connectivity

Exchange 2010 Opening multiple shared calendars & additional mailboxes

Exchange 2010 RPC Encryption Requirement

Exchange 2010 Public Folder Database requirement

exchange 2010

Special Thanks to Henrik Walther

Exchange 2010 RPC over HTTP Connectivity

In some situations Outlook 2003 users connecting to an Exchange mailbox using RPC over HTTP receive the following error message:

“Server Unavailable”

Although this is an Outlook 2003 specific client issue, the issue is not specific for Exchange 2010 organizations. It could also appear in organizations running Exchange 2003 or 2007.

The problem occurs if the RPC proxy server extensions do no load correctly. You can find more details and a description of how the issue can be remediated in the following KB article:

Special Thanks to Henrik Walther

Exchange 2010 Opening multiple shared calendars & additional mailboxes

Current Status: Issue with mitigation

Exchange 2010 SP1 together with the resolutions mentioned later in this section, allows you to open as many as 16 shared calendars or additional mailboxes simultaneously independent on whether the mailboxes are located on Exchange 2003, 2007, or 2010. If you have more than 16 calendars or additional mailboxes opened, you may randomly see error message similar to the one shown in Figure 4.

Figure 4:
Error message when opening more than 16 calendars

With Exchange Server 2010 RTM deployed into an Exchange 2003 or Exchange 2007 organization, it was a common issue that when an Exchange 2003 or Exchange 2007 user tried to open more than two additional Exchange 2010 mailboxes or shared calendars using Outlook 2003, she would receive one of the following error messages:

  • The set of folders could not be opened
  • The information store could not be opened
  • Unable to display the folder. The information store could not be opened

When an Exchange 2007 user tried to send an e-mail using Outlook 2003, she would sometimes also receive the following error message:

  • Task ‘Microsoft Exchange Server – Sending’ reported error (0x800C8100): ‘Unknown Error 0x800c8100’

These issues were resolved with Update Rollup 2 for Exchange 2007 Service Pack 2 and a hotfix that were released for Exchange 2003 SP2. More information about the issues and how they are resolved can be found in the following KB articles:

    Although the above mentioned issues were resolved, some customers, partners, and individuals in the Exchange communities reported they still experienced issues when trying to open approximately multiple shared calendars and/or additional mailboxes using Outlook 2003.

    For most organizations, the issue can be remediated by installing Exchange 2010 SP1 as this service pack includes a fix that makes it possible for an Exchange 2003, 2007, or 2010 user to open as many as approximately 16 shared calendars or additional mailboxes using Outlook 2003.

    Figure 5:
    By default approximately 16 Calendars can be opened using Outlook 2003

    If you have users that needs to open more than 16 shared calendars or additional mailboxes using Outlook 2003, you can adjust the RPC related throttling policy settings using the Set-ThrottlingPolicy cmdlet. Specifically, you need to increase the value for “RCAMaxConcurrency” which by default is set to “20”. The RCAMaxConcurrency parameter indicates how many concurrent connections an RPC Client Access user can have against a server running Exchange 2010 at one time.

    Figure 6:
    Default setting for the RCAMaxConcurrency throttling policy value

    For instance, to increase the value of the “RCAMaxConcurrency” setting in the default throttling policy from 20 to 2147483647, open the Exchange Management Shell and run the following command to first create a variable for the policy:

    $a = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}

    Then pipe the variable to the Set-ThrottlingPolicy commandlet:

    $a | Set-ThrottlingPolicy -RCAMaxConcurrency 2147483647

    Figure 7:
    Increasing the value for the RCAMaxConcurrency throttling policy setting

    In order to apply the changes, restart the “Microsoft Exchange Throttling” service on each CAS server in the organization.

    You can read more about Exchange 2010 SP1 throttling policies in the Exchange 2010 documentation on Microsoft TechNet.

    If you still have issues opening shared calendars or additional mailboxes, you may want to increase the value of the RCAMaxConcurrency throttling policy setting to 100 or even higher. Read more in Error message when Outlook 2003 clients try to open multiple shared calendars in Exchange Server 2010: "The connection to the Microsoft Exchange server in unavailable. Outlook must be online or connected to complete this action".

    If you see event 4696 with a description similar to the following logged in the application log on the Mailbox servers in the organization:

    "Mapi session "00cc8dde-64d7-4353-8050-00fc2057aae3: /O=xxxx/OU=xxxx/cn=Recipients/cn=ward" exceeded the maximum of 32 objects of type "session"."

    You need to increase the maximum allowed sessions per user and/or maximum allowed service sessions per user limit from "32" to "64" or even higher. See more information at: Exchange 2010 SP1 Store Limits.

    but when I tried to add the “szMaxAllowedSessionsPerUser and/or “szMaxAllowedServiceSessionsPerUser”, I still saw 9646 in the app log.

    Guess why? yes the registry keys are actually listed with wrong names in that article. Instead of:

    • szMaxAllowedSessionsPerUser
    • szMaxAllowedServiceSessionsPerUser

    You need to use:

    • Maximum Allowed Sessions Per User
    • Maximum Allowed Service Sessions Per User

    And then everything worked as expected…

    Hopefully the TechNet page is updated soon.

    Special Thanks to Henrik Walther

    FREE eBook: The SysAdmin Handbook

    Een aantal mensen van Red-Gate hebben weer een mooi ebook geschreven wat elke Microsoft/Exchange beheerder moeten weten. Het is een samenvatting van The Best of
    Simple Talk SysAdmin

    De Onderwerpen:

    – High Availability in Exchange 2007
    – Message Hygiene in Exchange Server 200731
    – Using Exchange 2007 for Resource Booking
    – Controlling Email Messages using Exchange’s Transport Rules
    – Exchange 2007 Mailbox Server Clustering
    – Top Tips for Exchange Admins
    – Exchange Database Technologies
    – Message Classifications in Exchange 2007
    – Deploying Exchange 2007 on Windows Server 2008
    – Exchange Server Log File Replay
    – Configuring Exchange Server 2007 to Support Information Rights Management
    – Reporting on Mobile Device Activity Using Exchange 2007 ActiveSync Logs
    – Online Exchange Backups
    – Optimizing Exchange Server 2007
    – Exchange: Recovery Storage Groups
    – Exchange E-mail Addresses and the Outlook Address Cache
    – Upgrading to Exchange Server 2007
    – Goodbye Exchange ExMerge, Hello Export-Mailbox
    – Determining MS Exchange Disk Performance
    – Upgrading to Exchange Server 2007: Part 2
    – Message Tracking in Exchange 2007
    – Third Party High Availability and Disaster Recovery Tools for Microsoft Exchange Server
    – Exchange Server 2010 – The First Public Beta Version
    – Emulating the Exchange 2003 RUS for Out-of-Band Mailbox Provisioning in Exchange 2007
    – Using Exchange 2007 Transport Rules to Protect the First Entry in the Address Book
    – Cluster Continuous Replication Network Design
    – Building an Exchange Server 2007 environment
    – An Introduction to Messaging Records Management
    – Installing Hyper-V and Beyond
    – Restricting Outlook Client Versions in Exchange 2007
    – Using Twitter and PowerShell to Find Technical Information and Join a Community
    – Update: Exchange Server 2010 Release Candidate
    – Exchange backups on Windows Server 2008
    – Moving to Office Communications Server 2007 R2
    – Monitoring and Scheduling Exchange 2007 Database Online Maintenance
    – Exchange 2010 High Availability
    – Implementing Cluster Replication – Part 1
    – The Active Directory Recycle Bin in Windows Server 2008 R2
    – Using Group Policy to Restrict the use of PST Files
    – Introduction to Exchange Server 2010
    – The Ego and the System Administrator
    – Implementing Windows Server 2008 File System Quotas
    – Implementing Cluster Continuous Replication, Part 2
    – Active Directory Management with PowerShell in Windows Server 2008 R2
    – Upgrade Exchange 2003 to Exchange 2010
    – Customizing the Outlook Address Book

    General Articles
    – A SysAdmin’s Guide to Change Management
    – A SysAdmin’s Guide to Users
    – Change Management – What It Is and Why You Need It
    – Manage Stress Before it Kills You
    – Hiring System Administrators
    – Increase Your Value as a Professional in the Technical Industry
    – The Art of Dealing with People

    – Virtual Exchange Servers
    – Virtualizing Exchange: points for discussion
    – Build Your Own Virtualized Test Lab
    – A Beginner’s Guide to Virtualizing Exchange Server – Part 1
    – A Beginner’s Guide to Virtualizing Exchange Server – Part 2
    – Windows Server Virtualisation: Hyper-V, an Introduction
    – Increasing the Availability of Virtualized Applications and Services
    – Microsoft Hyper-V Networking and Configuration – Part 1

    Unified Messaging
    – An Introduction to Unified Messaging
    – Moving to Office Communications Server 2007 R2

    – Managing Exchange 2007 Mailbox Quotas with Windows PowerShell
    – So You Thought PowerShell Was Only For Exchange 2007

    Downloaden klik op het boek


    Prepare Schema & AD & domain voor installatie Exchange 2010


    Domain Controller:
    Windows Server 2003 Standard Edition met Service Pack 1 (SP1) of later (32-bit or 64-bit)
    Windows Server 2003 Enterprise Edition met SP1 of later (32-bit or 64-bit)
    Windows Server 2008 Standard of Enterprise (32-bit or 64-bit)
    Windows Server 2008 R2 Standard or Enterprise

    Prepare Active Directory en domains

    1. Indien er nog een Exchange 2003 Server aanwezig is moet je:
    setup /PrepareLegacyExchangePermissions of setup /pl

    2. setup /PrepareSchema of setup /ps

    3. setup /PrepareAD of setup /p
    Onder de OU in domain genoemd Microsoft Exchange Security Groups worden de volgende groepen aangemaakt:
    Exchange Organization Management
    Exchange Recipient Management
    Exchange Server Management
    Exchange View-Only Organization Management
    Exchange Public Folder Management
    Exchange UM Management
    Exchange Hygiene Management
    Exchange Records Management
    Exchange Discovery Management
    Exchange Delegated Setup

    Legacy Groepen:
    Exchange Security Groups OU:
    Exchange Organization Management
    Exchange Recipient Management
    Exchange Server Management
    Exchange View-Only Organization Management
    Exchange Public Folder Management
    Exchange UM Management
    Exchange Hygiene Management
    Exchange Records Management
    Exchange Discovery Management
    Exchange Delegated Setup

    4. setup /PrepareDomain of setup /pd

    Translate »