Exchange 2010

Fix Can't open Public Folder - Cannot expand the folder - Microsoft Exchange is not available - Exchange 2010

If you try to expand a public folder in Outlook and you receive the following error:

Fix Can't open Public Folder - Cannot expand the folder - Microsoft Exchange is not available

"Cannot expand the folder. Microsoft Exchange is not available. Either there are network problems or the Exchange server is down for maintenance."

or this message when trying to open open an address book from the public folder:

"The address list cannot be displayed. The Contacts folder associated with this address list could not be opened; it may have been moved or deleted, or you do not have permissions. For information on how to remove this folder from the Outlook Address Book, see Microsoft Outlook Help."Cannot expand the folder. Microsoft Exchange is not available. Either there are network problems or the Exchange server is down for maintenance

You will not receive any errors if you view the public folders through OWA, which makes the problem even more confusing.

Resolution: Start the "Microsoft Exchange RPC Client Access Service" on all your mailbox servers. In this case, both the mailbox servers shut off unexpectedly. When they came back online, that service was not started.

How to Import a Mailbox or PST on Exchange 2010 When Receiving Error - This Mailbox Exceeded the Maximum Number of Corrupted Items That Were Specified for This Move Request

To import a PST file into a mailbox on Exchange 2010, you need to assign rights to a user account to import emails. Do so by running the following command (You can reference every command in this article with the links at the bottom):

New-ManagementRoleAssignment –Role “Mailbox Import Export” –User DOMAIN\Administrator

Run the following command on a mailbox server to import the PST (The share for -FilePath must have Read/Write permissions for the group Exchange Trusted Subsystem). While this example is for importing mail, the same rules apply for moving mailboxes using the New-MoveRequest command:

New-MailboxImportRequest -Mailbox <MailboxOrMailUserIdParameter> -FilePath "\\fileserver\usermail.pst"

By default, if there are any bad items in the PST, the import will fail with the following error message:

This mailbox exceeded the maximum number of corrupted items that were specified for this move request

To fix this, you must first remove the failed import request:

Get-MailboxImportRequest -Status Failed |  Remove-MailboxImportRequest

Free Exchange 2010 SP2 Transport Agent

So as you may know Exchange 2010 SP2 came out with Address Book Policies to help seperate out your tenants if you are hosting multiple organizations. Even with this option there are still problems with Exchange sending information between tenants as if it were local.

Example of a problem is if Tenant-A emails Tenant-B and Tenant-B has a out of office reply on for internal and external. Tenant-A would receive back the out of office reply for the internal message that Tenant-B set instead of the external (since Exchange sees it as local).

As of right not I am not sure if it is possible to send the external message in a situation like this, but what is possible is deleting the internal OOF before the tenant gets it. This is what my transport agent does. It also routes all traffic between tenants to a specific send connector which you will have to configure for a smart-host.

This is currently in BETA and not written 100%. There are no performance counters and it is possible that the speed is not 100%. This is what I need you to test with me on if you can :-)

Attached is the transport agent. Please run the powershell script from the Exchange Shell.

To install run: ITSwapShop.ps1 Install

To uninstall run: ITSwapShop.ps1 Uninstall

Add-MailboxPermission for Exchange 2010 SP1 /hosting - Give Full Access to Mailbox to Another User

If I remember correctly when /hosting came out you could use the Add-MailboxPermission as the domain administrator. It seems now with a later rollup [correct me if I'm wrong] you can no longer use this command because it gives you errors such as:

 The operation on mailbox "host.local/Microsoft Exchange Hosted Organizations/****/user01" failed because it's out of the current user's write scope. The object 'host.local/Microsoft Exchange Hosted Organizations/****/user01' must be within the read scope before and after it's modified. Can't perform the save operation.

    + CategoryInfo          : NotSpecified: (host.local/Micr...S/checkrequests:ADObjectId) [Add-MailboxPermission], TaskInvalidOperationException
    + FullyQualifiedErrorId :7F410251,Microsoft.Exchange.Management.RecipientTasks.AddMailboxPermission

   To fix this issue you must run the powershell as the organization administrator instead of the domain administrator.

Below is how you can accomplish this using remote powershell:

  • Launch Exchange Shell / Powershell
  • Run:

$c = Get-Credential

$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http:///powershell -Credential $c

Import-PSSession $session -AllowClobber

Creating Tenants for Exchange 2010 SP2 Multi Tenant

Exchange 2010 SP2 has been released! Sucks for some of us using /hosting since there isn’t really a good migration path other than doing a forest migration. Anyways, SP2 has been released and we get the EMC back, and also some more roles such as the unified messaging role!

Most automation software [as of 1/2/2012] do not support SP2 yet. Some that currently do are ExtendASP, and I believe Machsol will in a couple of weeks. Personally I have not used either.

Anyways you can still separate your tenants manually without using a automation software but it is more complex and requires more steps than Exchange /hosting did. You will have to create multiple address lists and also use custom attributes. You can read the documentation at Download: Exchange 2010 SP2 Multi-Tenant Scale Guidance …

Note: Lync is supposed to be coming out with a hosting pack and requires a specific active directory organizational unit structure to work. I do not have this information so you may want to wait if you plan on deploying Lync Hoster pack with Exchange 2010 SP2.

Here are some things you will need to create:

2003 to 2010 Migration - Can’t email 2003 users via outlook but can using OWA

During the migration to Exchange 2010 you might have the need to keep your Exchange 2003 server up and running. This is a supported configuration but sometimes you can run into problems even though everything is technically configured correctly.

In our case our send connectors and routing group connectors were perfectly fine. Yet people on Exchange 2010 couldn’t email Exchange 2003 users via Outlook. Now the stranger thing was they could using OWA.

Well the problem had to do with Event ID: 9667:


Event ID: 9667

Type: Error

Category: General

Source: msgidNamedPropsQuotaError

Description: Failed to create a new named property for database “” because the number of named properties reached the quota limit (). User attempting to create the named property: . Named property GUID: . Named property name/id: .

So to fix the problem we had to goto the registry key:



Next we modify the registry value: NonMapi Named Props Quota

Change the value from 8192 to 16384

Now Dismount and remount the store



2003->2010 migration MapiExceptionLogonFailed

Ran across a problem this morning when trying to migrate mailboxes from Exchange 2003 to Exchange 2010. Kept getting an error stating the mailbox database was offline and it was unable to make a connection to the server.

To resolve this problem I just went to the Exchange 2003 mailbox store, opened the security tab, and added the new Exchange 2010 to have full control. Afterwards everything moved perfectly!


Removing an Organization (Remove-Organization)

 In order to remove an Organization from Exchange 2010 multi-tenant you must first delete all mailboxes from the organization. You can delete most of them through the ECP (Exchange Control Panel), but you will still be left with the administrator mailbox you are using, DiscoverySearchMailbox, and some others.

First you must find your organization you want to remove. You can do this by typing:

  • Get-Organization

Next you want to remove all mailboxes from the organization. Like I said above you can delete most of them using ECP or you can remove all the mailboxes quickly by typing:

  • Get-Mailbox-Organization"<ORG NAME HERE>"| Remove-Mailbox

Now that all mailboxes are removed you can type this to remove the organization: 

  • Remove-Organization -Identity "<ORG NAME HERE>"

Give it a minute and you should be able to do another Get-Organization and notice that your organization is gone! I took a picture for your viewing pleasure: 


Exchange 2010 Organization Prep failed (The object exists)

 Ran across a strange error today when trying to deploy a Exchange 2010 box in an existing 2003 organization. The problem was it kept saying the operation failed because the object “All Address Lists” already existed.

So when I pulled up ADSIEDIT and went to:

  • Configuration
  • CN=Services
  • CN=Microsoft Exchange
  • CN=<org name>
  • CN=All Address Lists Container

I noticed that under the “Address Lists Container” there was no All Address List, but when I looked over on the right side I saw the All Address List with the text document icon. The Class column for that object was also empty.

The problem was someone apparently set some Denies for the group “Everyone” on just that object. From the 2003 DC I was not able to edit the security properties of that object. It kept giving me errors when trying to open. I had to use ADSIEDIT from a 2008 box before I could even get the dialog box to open. Once I did I just removed that permission screw up, refreshed, and everything worked perfectly!

This is what it should look like:

Exchange 2010 SP1 Multi-Tenant (Step 2 of 3)

Creating New Organizations

Hosted Exchange uses “Service Plans” to control what organizations have access to what features. With service plans you can turn features on or off like POP, MAPI, ActiveSync, and even mailbox sizes. So open Windows Explorer and browse to:

c:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\ServicePlans

You will notice that there are sample service plans and CSV files called “ServicePlanHostingRemap”. It is very important you do not use the samples because they can be replaced with updates. Just simply copy a sample and rename it. Then open the HostingRemap file and put in something for the ProgramId and OfferId. The last one is for the name of the filename.

Service Plan

Next you will want to go to the Exchange Shell to create a new organization. So type:


  • $c = Get-Credential
  • New-Organization -Name "My Lab Domain" -DomainName -Location en-US -ProgramId Lab -OfferId 2 -AdministratorPassword $c.password

New Organization



The Parameters:



Subscribe to Exchange 2010