How to Install Exchange Server 2013

Deployment of an Exchange Server 2013 server goes through three main stages.

  1. Preparing Active Directory (if you are installing Exchange Server 2013 for the first time)
  2. Installing the Exchange Server 2013 pre-requisites on the server
  3. Running Exchange Server 2013 setup

Preparing Active Directory for Exchange Server 2013

When you are installing Exchange Server 2013 for the first time the Active Directory needs to be prepared.

There are a series of requirements for Active Directory preparation to be successful:

  • Schema master running Windows Server 2003 with SP2, or a later version of Windows Server
  • At least one Global catalog server per site that Exchange will be installed in that is running Windows Server 2003 SP2 or later
  • At least one Domain controller per site that Exchange will be installed in that is running Windows Server 2003 SP2 or later
  • Forest functional mode of Windows Server 2003 or higher
  • An account with Schema Admins, Domain Admins, and Enterprise Admins permissions to run Exchange setup

Although Active Directory preparation can occur as part of the installation of the first Exchange Server 2013 server, you can also run the Active Directory preparation as a separate task beforehand on a 64-bit server running Windows Server 2008 or higher.

Because the Active Directory preparation requires the RSAT-ADDS tools I am running it on the domain controller in my test lab.

Alternatively, you can install the tools on a member server to run Exchange 2013 Active Directory preparation.

For Windows Server 2008 R2 (SP1 or later), in PowerShell run:

Import-Module ServerManager

Add-WindowsFeature RSAT-ADDS

For Windows Server 2012, in PowerShell run:

Install-WindowsFeature RSAT-ADDS

If you are installing Exchange Server in the AD forest for the first time run the following Exchange 2013 setup command to prepare Active Directory:

setup /PrepareAD /OrganizationName: "your organization name" /IAcceptExchangeServerLicenseTerms

Note: if your organization name contains spaces then it must be enclosed in quotes as shown above.

If an Exchange organization already exists you can omit the /OrganizationName parameter.

setup /PrepareAD /IAcceptExchangeServerLicenseTerms

For other Active Directory preparation scenarios, such as multiple forests or multiple domains, refer to this article on TechNet.

Installing the Exchange Server 2013 Pre-Requisites

Exchange Server 2013 can be installed on either Windows Server 2008 R2 (SP1 or later) or Windows Server 2012. Depending on the server roles you are installing the pre-requisites vary.

Installing Exchange Server 2013 Using the Setup Wizard

After installing the pre-requisites a restart of the server may be required. If you proceed without restarting then setup may be unable to proceed when it detects the pending restart.

From the location where you have stored your Exchange 2013 files run Setup.exe.

The first dialog gives you the opportunity to check for updates to the setup files before you proceed.

Check for updates to Exchange 2013 setup files

After the setup files have updated click Next to continue.

Click Next to continue past the Introduction message.

Exchange 2013 setup introduction

Accept the license agreement and click Next to continue.

Exchange 2013 license agreement

Choose whether or not to enable Error Reporting and click Next to continue.

Configure Exchange 2013 error reporting

After a check that all the pre-requisites are installed the setup wizard will move on to the next step automatically (if the check was successful).

Now we can choose the server roles to install. If this is the first server you’re installing Microsoft recommends you install the Mailbox server role first (this can be either a Mailbox-only server or a combined Mailbox/Client Access server).

Choose the Exchange 2013 server roles to install

Verify that you have enough disk space for the installation, or choose a path that does have enough disk space, and click Nextto continue.

Choose the location to install Exchange 2013

If there is no existing Exchange organization in Active Directory, and you haven’t already prepared Active Directory for Exchange, you will be prompted to enter an Exchange organization name.

When installing the Mailbox server role you are given the option to disable malware protection. If you disable it now you can enable it again later.

Configure anti-malware protection for the Mailbox server

Some readiness checks are performed. If this is the not the first server you’re installing and there is no Send Connector defined for outbound email then you may see a warning, but you can still proceed with the server installation.

Setup can’t detect a Send connector with an address space of ‘*’. Mail flow to the Internet may not work properly.

Exchange 2013 setup pre-requisite warning

When you are ready to proceed you can click Install to begin.

Begin the installation of Exchange 2013

The install is a fairly lengthy process, so you may want to go and do something else while you wait. When setup has finished click Finish.

Exchange 2013 setup is finished

Configuring Exchange Server 2013

After installing Exchange Server 2013 there are a number of configuration tasks that you can perform next:


  1. says

    Hi Paul, I am trying to get an instance of Exchange 2013 up and running on a single lab VM with MS SharePoint 2013 Preview. My principal aim is to explore the new Site Inbox functinality that SP2013 now offers. I understand that I need Exchange 2013 for this. My VM is running Server 2012 Preview, as well as SQL Server 2012 Preview and AD server 2012 Preview. I have the 200-something Contoso users set up both in AD and as SP2013 users. I know little to nothing about Exchange and am looking for resources, scripts or just plain instructions on how to set up a minimal Exchange configuration for this purpose. Any help would be greatly appreciated. Kind regards, Robert

  2. Martin says

    I have tried to run the “setup /PrepareAD /OrganizationName: “your organization name” /IAcceptExchangeServerLicenseTerms” command in Windows Server 2012 Evaluation Datacenter machine and get the error “a setup term is not recognized…”. The command “Install-WindowsFeature RSAT-ADDS” has been executed corractly. Did I miss something? An Exchange Server downloaded file ha a name “Exchange-x64.exe” – “no setup.exe”, so what “setup” should I use, please? Thanks.

  3. Martin says

    Sorry, I have got the setup file after exchange-x64 unzip, sorted out. I had to run it as “.\setup …” command.

  4. Prashant says

    And also you did’t get client array server option..when you installed exchage 2013..How did you configure new cas array on exchage 2013…?


  5. says

    Hi Paul,

    You prerequisites are wrong. You do not require Windows Server 2008 DC/GC per site, according to Microsoft, Windows Server 2003 SP2 or later is required “”


  6. keith says

    i have a exchange 2007 sp3 RU10 with win 2k8 enterprise running in a production site, and i have a exchange 2013 with server 2k8R2 Enterprise , it is now coexistence, i would like to know how to move mailbox over from exchange 2007 to exchange 2013 ?

  7. cuocdoi says


    when I install Exchange 2013 in Window 2008 R2, I met an error as below:

    Step 7 of 14: Mailbox role: transport service

    The following error was generated when “$error.Clear();
    if ( ($server -eq $null) -and ($RoleIsDatacenter -ne $true) )
    Update-RmsSharedIdentity -ServerName $RoleNetBIOSName
    ” was run: “Database is mandatory on UserMailbox. Property Name: Database”.

    Could you help me how to solve it, please ?


  8. Jonathan says

    Hi Paul,

    Good article. Encouraging in that you refer to Windows Server 2008 R2 SP2, which I had hoped to use for base OS for Exchange 2013. These pre-requisites are of course necessary to install the Exchange 2013 product on the selected base OS of either Windows server 2008 R2 Sp1 or Windows Server 2012 and mentioned in your article.

    I am attempting to install Exchange 2013 in a lab environment consisting of Windows Server 2008 R2 SP1. (Two DC’s a CAS and a MB server).

    When attempting to install the pre-requisite “Windows Management Framework 3.0” on Windows Server 2008 R2 SP1 I get an error “This update is not applicable to your computer” which for this OS is Windows6.1-KB2506143-x64. This is required for both the CAS and MB server and introduces PS 3.0 to the OS.

    After several attempts I have moved on, to install on Windows Server 2012 Standard edition as this has power shell 3.0 inbuilt.

    However both you and MS claim that it is possible to install Windows Management Framework 3.0, to allow Exchange 2013 installed on 2008 R2 SP1.

    Do you know why this fails?

    As per MS TechNet article the following pre-requisites were installed.

    Any help appreciated.

  9. Tom says

    i’m trying to setup an Exchange 2013 server but the prerequisites says, there’s an Exchange 2003 Server running in my domain. But i’m shure, there’s no one. Only an Exchange 2007.
    Any hints what to do?


  10. Peter J. Nilsson says

    Hi – Got the most stupid problem ever.

    Try to run
    setup /PrepareAD /IAcceptExchangeServerLicenseTerms

    If I do it in Powershell logged on as my real account – its opened in a separate prompt and closed immediately after completion so i cannot see the error messages.

    If I open Powershell as Administrator I don’t have the necessary permissions to change schema.

    What’s the trick here?

    (WinServer2012 & Exchange 2013 in org where Exchange 2007 already exists)


  11. kongkea says

    Installing Exchange Server on a domain controller will elevate the privileges for Exchange Trusted Subsystem to domain administrators.
    Step 7:Mailbox role
    The following error was generated when “$error.Clear();
    $maxWait = New-TimeSpan -Minutes 8
    $timeout = Get-Date;
    $timeout = $timeout.Add($maxWait);
    $currTime = Get-Date;
    $successfullySetConfigDC = $false;

    while($currTime -le $timeout)
    $setSharedCDCErrors = @();
    Set-SharedConfigDC -DomainController $RoleDomainController -ErrorVariable setSharedCDCErrors -ErrorAction SilentlyContinue;
    $successfullySetConfigDC = ($setSharedCDCErrors.Count -eq 0);

    Write-ExchangeSetupLog -Info (“An error ocurred while setting shared config DC. Error: ” + $setSharedCDCErrors[0]);
    Write-ExchangeSetupLog -Info (“An exception ocurred while setting shared config DC. Exception: ” + $_.Exception.Message);

    Write-ExchangeSetupLog -Info (“Waiting 30 seconds before attempting again.”);
    Start-Sleep -Seconds 30;
    $currTime = Get-Date;

    if( -not $successfullySetConfigDC)
    Write-ExchangeSetupLog -Error “Unable to set shared config DC.”;
    ” was run: “Unable to set shared config DC.”.

      • Steve says

        For some people that isn’t a solution. For example, I work for a small non-profit. If we could buy a separate server for Exchange we would, but we can’t. So we have to install Exchange on our DC.
        We are getting the same error.

    • Shahan says

      This error is because you have IPV6 disabled on you network interface cards.We need to enable it again before starting the installation of Exchange 2013. To do so drop to the desktop in Server 2012. In the bottom right hand corner right click the little monitor and select Open Network and Sharing Center, then select Change Adapter Settings.Then select your network card by right clicking it and selecting properties.

      make sure as you can see below that IPV6 is selected and enabled, once done reboot the server and Exchange 2013 will install correctly.

    • rahmatgul says

      The following error was generated when “$error.Clear();
      $maxWait = New-TimeSpan -Minutes 8
      $timeout = Get-Date;
      $timeout = $timeout.Add($maxWait);
      $currTime = Get-Date;
      $successfullySetConfigDC = $false;

      while($currTime -le $timeout)
      $setSharedCDCErrors = @();
      Set-SharedConfigDC -DomainController $RoleDomainController -ErrorVariable setSharedCDCErrors -ErrorAction SilentlyContinue;
      $successfullySetConfigDC = ($setSharedCDCErrors.Count -eq 0);

      Write-ExchangeSetupLog -Info (“An error ocurred while setting shared config DC. Error: ” + $setSharedCDCErrors[0]);
      Write-ExchangeSetupLog -Info (“An exception ocurred while setting shared config DC. Exception: ” + $_.Exception.Message);

      Write-ExchangeSetupLog -Info (“Waiting 30 seconds before attempting again.”);
      Start-Sleep -Seconds 30;
      $currTime = Get-Date;

      if( -not $successfullySetConfigDC)
      Write-ExchangeSetupLog -Error “Unable to set shared config DC.”;
      ” was run: “Unable to set shared config DC.”.

      2013 exchange server error problem

  12. Lawrence says

    After we did the step ‘setup /PrepareAD’ to extend the schema on domain controller using Windows Server 2003, now we are receiving the event id 1136 error (Active Directory failed to create an index for the following attribute.) for the attributes below


    Additional Data
    Error value:
    -1403 JET_errIndexDuplicate, Index is already defined.

    What we were trying to do is to migrate our Exchange 2007 on Windows Server 2008 to Exchange 2013 on Windows Server 2012.

    . what is the resolution for the event 1136? Or how do we stop these errors?
    . Can I still proceed with the Exchange 2013 installation?


    • says

      I haven’t seen that error before. My first thought is to double check that you meet all of the pre-reqs for Exchange 2013 in terms of DC/GC versions, service packs for existing Exchange, etc etc.

  13. exrookie says

    Need some help. I’m trying to install exchange 2013 on windows 2012. I did everything correctly in term of preparation that I can think of. To brief, I had windows 2012 and join to domain as member server. I install RSAT and the windows features that pertain to Client access + Mailbox, installed Runtime, Filter Pack, etc. Then I did the setup /prepareschema, prepareADwithout any issues. Last step was to run setup with elevated admin. However as it gets to Step 7 of 14 (transport step) it gave me this error. By the way this is a VM lab environment. This is the second time I ran into this very same issue. I thought I did something wrong the first time so I completely remove and rebuild the VM and start all over.

    The following error was generated when “$error.Clear();
    if ($RoleStartTransportService)
    start-SetupService -ServiceName MSExchangeTransport -MaxWaitTimeForRunningState 0:0:40
    ” was run: “Service ‘MSExchangeTransport’ failed to reach status ‘Running’ on this server.”.

  14. Jack Cristi says

    Hi Sir Paul,
    I know this is basic and I am new with exchange server 2013 with operating system Windows server 2008 R2.

    I would like to ask why i can’t send emails from yahoo/gmail/hotmail and other accounts to Exchange server 2013. i already configure send connectors. Do i need to configure the default received connectors?

      • jack lauren cristi says

        Hi Sir Paul,

        Thank you for your response, i have a lot of questions to ask sir paul..

        1. Is there any possibility to received emails from Outside organizaton such as yahoomail, gmail, hotmail and any private organization etc. to exchange server 2013 without registering our domain?

        2. due to the unavailability of our selected domain… my problem is how do i change the domain of our server? will it affect the installed exchange 2013? what should i do first? uninstall exchange 2013 before i change the domain of our server?

        • says

          1) No.

          2) It doesn’t really matter what domain your Active Directory is using when it comes to getting mail flow working. Exchange can accept email for any domain that you own and that you configure it to accept. This is managed through the Accepted Domains for Exchange, as well as the Email Address Policies (to assign email address to mailboxes etc).

          So your server can be but your emails can be

          Quite normal actually.

  15. jack cristi says

    Hi sir paul,

    1. So what I need to do is to grab a domain and register it.
    2. Install and Configure my server 2008 r2 and use the registered domain
    3. Install prerequisite for exchange
    4. Install exchange server 2013
    5. After this procedure… I will follow the instriction the one u send to me regarding MX record and firewall port set up though:
    6. I am able to.sens and.receive emails to another domain.
    8 finally… Thank you for helping me….my boss will kill me.i I can’t do this… Thanks you soo much…

  16. Jackie says

    I recieved this error on step 6 of 8 Mailbox Role: Mailbox Service
    The following error was generated when “$error.Clear();
    if (!$RoleIsDatacenter)
    $arbUsers = @(get-user -Filter {lastname -eq “MSExchApproval 1f05a927-3be2-4fb9-aa03-b59fe3b56f4c”} -IgnoreDefaultScope -ResultSize 1);
    if ($arbUsers.Length -ne 0)
    $mbxname = $arbUsers[0].name;
    $mbxs = @( get-mailbox -arbitration -Filter {name -eq $mbxname} -IgnoreDefaultScope -resultSize 1 );
    if ( $mbxs.length -eq 0)
    $dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
    if ($dbs.Length -ne 0)
    enable-mailbox -Arbitration -identity $arbUsers[0] -database $dbs[0].Identity;
    ” was run: “The user’s Active Directory account must be logon-disabled for linked, shared, or resource mailbox.”.

  17. jack cristi says

    Hi Sir Paul,

    I’d like to ask on how to fix the connection between outlook 2010 to exchange server 2013… I already configure it manually but still i cant connect to exchange…it shows that i’m unable to connect to exchange server.

    is there any way to reset all the settings for ms exchange server 2013?

    thank you sir paul,

    regards Jack Cristi

  18. Denis Muendo says

    Hello Paul,
    I am doing a migration of Exchange 2003 to 2013.what comes after the installation and creation of mailboxes and recipient policies.
    Best Regards,
    Denis Muendo.

  19. Jan De Smet says

    Hello Paul,

    I am migrating an existing Exchange organization to office 365. First step in this migration is a migration to exchange 2013. At the moment we have 5 Exchange 2010 servers with all roles installed. We would like to setup 2 Exchange 2013 in the datacenter. In this datacenter we also have one exchange 2010 server.

    In the end, all mailboxes should be migrated to office 365. We need to migrate all mailboxes to exchange 2013 server first, and then to the cloud.

    Do you have any insights or feedback?

    many thanks in advance



    • says

      Hybrid and O365 aren’t really my speciality, but my understanding is that you don’t need Exchange 2013 to go Hybrid/O365, you can do it with just Exchange 2010. But I assume there are some advantages to going with an Exchange 2013 Hybrid instead.

      • Jan De Smet says


        Many thanks for you response. As we have 5 geographically different sites, we would first like to consolidate all mails in the datacenter. The Hybrid config of 2013 is slightly improved. (move requests)

        This 2013 server will remain in the organization

        My concern is that one exchange 2013 would be sufficient for all the mailboxes. Or would it be more interesting to install a second 2013 server as well.




    • says

      All Exchange 2007 servers need to be upgraded to the minimum version. If you have any Edge Transport servers, after you upgrade them you need to recreate the Edge Subscription so AD gets updated with their new version number.

      • Aliyu Garba says

        have three (3) Exchange Servers in the organization two (2) are mailbox and cas servers and one (1) is Hub transport server.
        I recently try to uninstall the Hub TS am having issue doing that so i when to ADSI Edit to deleted only the server name there.

        All the Exchange Server 2007 i have upgrade them to SP3 CUL Rollup 10 and 13 already.

        Hello Sir Paul.
        I have only Two (2) exchange server 2007 now even if i when to ADSI EDIT only two servers name now i use to see when i run the command in exchange management shells get-exchange server. Still is 2 server name.

        Does that mean that HUB Transport server is Still Exists in the organization if so please how can i remove it ?.

        Or do i need to delete all the server name there before the Upgrade will coexist.

        Please i need your quick response i have spent almost four days on this issue.

  20. Numto says

    Hello Dears
    I’m facing an issue since two days while installing Exch 2013 SP1 on a new server running on Win 2012 R2.
    I currently have two exchange servers running correctly since couple of months ; one Ex 2010 SP3 on Win 2008 R2 and another Exch 2013 (without SP1) on Win 2012 (without R2)
    I’ve prepared all Exch 2013 prerequisites except the ADPREP as I already have one Exch 2013 server in my organization.
    Here is the error I’m getting while installing :
    The following error was generated when “$error.Clear();
    if ( ($server -eq $null) -and ($RoleIsDatacenter -ne $true) )
    Update-RmsSharedIdentity -ServerName $RoleNetBIOSName
    ” was run: “Database is mandatory on UserMailbox.”.

    Here are what I’ve already checked :
    – No NIC teaming
    – No previous unsuccessful exchange installation
    – IPv6 is enabled in all Exch and DC servers (however IPv4 is used)
    – The used account is member of Schema, enterprise and domain admins

    Thank you in advance.

  21. Suliasi W says


    I have 5 different domains, and I am using 1 exchange 2010 has Edge Transport, 1 Exchange 2013 has an Internal email Server. How can I can configure it

  22. Michael F says

    Paul, could you please tell me whether Autodiscover is able to resolve through an edge server or whether it is intended to come straight into the LAN to resolve on the CAS. Very confusing subject for which there seems little guidance.
    Your comments will be very much appreciated.
    Thank you.

  23. lukman says

    Hello paul,

    Have setup my exchange server 2013 correctly and i can send and receive mail, but my issue is that i cannot view my website internally because my internal domain name and external domain name are the same e.g “”. i have also created an ‘A’ record on the internal dns to point to public IP of the external website but still cannot access my website internally but can access it both with public IP and name from external network.

    • says

      Have you added an A record for “www” to your internal DNS to point to your website’s public IP address? If not, try that.

      In your case “” is going to already resolve to your domain controllers, so you would not be able to also use that to access the external website.

  24. Kush says

    Hi Paul,

    As always great article. I have managed to install Exchange 2013 in coexistence with Exchange 2010 in a test Lab. When I launch the EAC and I login I receive an error

    “500 Unexpected Error :( An error occurred and your request couldn’t be completed. Please try again.”

    Any ideas what I can look at to resolve this?

      • Kush says

        Hi Paul,

        the URL already had ?ExchClientVer=15 appended to it and I am still seeing the same error

        I tried your suggestion of creating a new user account. I permissioned it as per the article, however I am still left with the same issue?

        Having checked the Event Viewer I can see the following event being logged

        Log Name: Application
        Source: MSExchange Control Panel
        Date: 02/10/2014 12:18:04
        Event ID: 4
        Task Category: General
        Level: Error
        Keywords: Classic
        User: N/A
        Current user: ‘’
        Request for URL ‘’ failed with the following error:
        System.Web.HttpUnhandledException (0x80004005): Exception of type ‘System.Web.HttpUnhandledException’ was thrown. —> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> Microsoft.Exchange.Diagnostics.SetupVersionInformationCorruptException: Unable to determine the installed file version from the registry key ‘HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine’.
        at Microsoft.Exchange.Diagnostics.ExchangeSetupContext.get_PSHostPath()
        at Microsoft.Exchange.Configuration.Authorization.InitialSessionStateBuilder.InitializeWellKnownSnapinsIfNeeded(ExchangeRunspaceConfigurationSettings settings, Boolean isPowerShellWebServiceSession)
        at Microsoft.Exchange.Configuration.Authorization.InitialSessionStateBuilder.Build(List`1 allCmdlets, List`1 allScripts, ExchangeRunspaceConfiguration runspaceConfig)
        at Microsoft.Exchange.Configuration.Authorization.ExchangeRunspaceConfiguration.CreateInitialSessionState()
        at Microsoft.PowerShell.HostingTools.RunspaceFactory.CreateRunspace(PSHost host)
        at Microsoft.Exchange.Management.ControlPanel.EcpRunspaceFactory.CreateRunspace(PSHost host)
        at Microsoft.PowerShell.HostingTools.RunspaceFactory.CreateRunspace()
        at Microsoft.PowerShell.HostingTools.RunspaceMediator.AcquireRunspace()
        at Microsoft.PowerShell.HostingTools.RunspaceProxy.SetVariable(String name, Object value)
        at Microsoft.Exchange.Management.ControlPanel.PSCommandExtension.InvokeCore[O](PSCommand psCommand, RunspaceMediator runspaceMediator, IEnumerable pipelineInput, WebServiceParameters parameters, CmdletActivity activity, Boolean isGetListAsync)
        at Microsoft.Exchange.Management.DDIService.CmdletActivity.ExecuteCmdlet(IEnumerable pipelineInput, RunResult runResult, PowerShellResults`1& result, Boolean isGetListAsync)
        at Microsoft.Exchange.Management.DDIService.GetListCmdlet.Run(DataRow input, DataTable dataTable, DataObjectStore store, Type codeBehind, UpdateTableDelegate updateTableDelegate)
        at Microsoft.Exchange.Management.DDIService.Workflow.Run(DataRow input, DataTable dataTable, DataObjectStore store, Type codeBehind, UpdateTableDelegate updateTableDelegate)
        at Microsoft.Exchange.Management.DDIService.WSListDataHandler.ExecuteCore(Workflow workflow)
        at Microsoft.Exchange.Management.DDIService.WSDataHandler.Execute()
        at Microsoft.Exchange.Management.DDIService.DDIServiceHelper.GetListCommon(DDIParameters filter, SortOptions sort, Boolean forGetProgress)
        — End of inner exception stack trace —
        at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
        at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
        at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
        at Microsoft.Exchange.Management.ControlPanel.WebServiceReference.GetList(DDIParameters filter, SortOptions sort)
        at Microsoft.Exchange.Management.ControlPanel.OrganizationCache.LoadTargetDeliveryDomain(AddValueHandler addValue, LogErrorHandler logError)
        at Microsoft.Exchange.Management.ControlPanel.OrganizationCache.TryGetValue[T](String key, T& value)
        at Microsoft.Exchange.Management.ControlPanel._Default.RenderMetroTopNav()
        at ASP.default_aspx.__RendermainForm(HtmlTextWriter __w, Control parameterContainer)
        at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
        at System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer)
        at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer)
        at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer,

        Would you have any other suggestions?

        • Kush says

          Hi Paul,

          I managed to resolve this issue

          I noticed I was also getting big error when opening up EMS. The error was complaining about unable to determine the installed file version from the registry key at

          location “‘HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1”

          I started regedit on the server and went to the location “‘HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1” but I couldn’t find “PowerShellEngine” Key at the location, it was missing.

          I exported PowerShellEngine Key from a windows 2008 R2 server and Imported it on the Windows 2012 R2 Server.

          This resolved both EMS and EAC issue

          Hope this helps someone else

  25. Hein Traag says

    Badly need some help here. Before he left the company my ex-collegae did a fubar on our passive 2013 exchange server. Now we are able to create database and even manually (commandline) migrate mailboxes from 2010 to 2013 but whenever we try to single or batch migrate users using ECP we get this message:

    Cannot open mailbox /o=CompanyName/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Server s/cn=EX13-MS2/cn=Microsoft System Attendant

    We tried to remedy this by taking apart the DAG we had build, cleanly uninstall exchange on the EX13-MS2 server and then do a clean install again. Unfortunately this did not work.

    The following command was tried on the EX13-MS2:
    Enable-Mailbox -Arbitration -Identity “Migration.8f3e7716-2011-43e4-96b1-aba62d229136”

    Which gives us a warning:
    “This task does not support recipients of this type. The specified recipient e4-96b1-aba62d229136 is of type UserMailbox. Please make sure that this recipient matches the required recipient type f or this task.”

    Even though the first command did not work we did tried the following command as wel:
    Set-Mailbox “Migration.8f3e7716-2011-43e4-96b1-aba62d229136” -Arbitration –Management:$true

    Which did not give an error but did also not resolve our situation.

    So the question is.. how do we get rid of this error?

  26. Hein Traag says

    I cannot edit my previous post. We found the problem. We had two crashed servers. We build a new set of servers. And from that new set of servers the active server is trying to connect to the crashed passive server during a ECP migration.

    So what we really need to know is where can we edit the settings that tell the ECP which two servers are in use?

  27. wagdi says

    Dear Paul
    This is my scenario:-
    * I have a local domain called (Unregistered) .and have public domain called (registered domain)
    * I want to add may server name to the SAN certificate ( but godaddy said that they can not do that because is Unregistered domain.
    my question is :
    Is it important that the server name to be included in certificate ? and does this affect the connection between Microsoft outlook and the exchange server?

  28. Kush says

    Hi Paul,

    Our Exchange 2013 setup will consist of 2 DAG’s with 8 servers split across 2 sites (4 servers in each site) with a FSW in a third site in a different continent.

    My question is, is it best practice to configure all servers with the CAS and MAILBOX role or would it be better if I separate out the CAS role.

    The plan going forward is to also configure a load balancer and have 2 CAS servers from each site configured on the load balancer utilising one name space. Would this config work? Do you see any issues?

    Your expert help would be greatly appreciated.



  29. Michael says

    Hi Paul,

    I am getting the below error in the readiness check in exchange 2013 CU6:
    The task failed because a Win32 error occurred: “Access is denied”. Could not open the service “MSDTC”

    Can you advise what is causing this issue?



  30. LuJa says

    Hi Thanks!
    This guide was an eye-opener for me, as I normally administer linux boxes exept one requires me
    to use and administer Windows.
    W/O your guide I would not have succeded to install Exchange 2013 SP1 on 2012 R2 as
    M$ claims it to be incompatible in the “prerequisites check”.
    The M$-Stuff still stinks 😉


    • says

      Windows Server 2012 R2 is supported for Exchange 2013 SP1 or later.

      Not sure why you are installing SP1 though. The latest build is CU9 and that is the one that should be used for new server deployments.

Leave a Reply

Your email address will not be published. Required fields are marked *