invalid chars after migrating from exchange 2003 to exchange 2007

Problems with migrating users from Exchange 2003 to Exchange 2007? Well quite likely you might see situations where mailbox aliases get corrupted with invalid charcaters, pretty much all objects could get affected by this: e.g: users, distriubution lists, contacts.

One of my customer saw this after generating a transcript after their migration:

Start powershell
[PS] C:\Windows\System32>get-mailpublicfolder -ignoredefaultscope | format-list

In the transript file, these warnings were littered all over the place.

“WARNING: Object servizi.prv/Microsoft Exchange System Objects/Protocollo SI
(GRTN) has been corrupted and it is in an inconsistent state. The following
validation errors have occurred:
WARNING: "Protocollo SI (GRTN)" is not valid for Alias. Valid values are:
Strings formed with characters from a to z (uppercase or lowercase), digits
from 0 to 9, !, #, $, %, &, ', *, +, -, /, =, ?, ^, _, `, {, |, } or ~. One or
more periods may be embedded in an alias, but each one of them should be
preceded and followed by at least one of the other characters. Unicode
characters from U+00A1 to U+00FF are also valid in an alias, but they will be
mapped to a best-fit US-ASCII string in the email address which is generated”

This one has an alias of:
“Alias                              : 1° INVIO”

 As the warning specifies, the invalid characters needed to be stripped out..

Exchange escalation engineer Matt Byrd has coded up a powershell script to fix just this problem.
https://msexchangeteam.com/files/438479/download.aspx

read more about here
https://msexchangeteam.com/archive/2007/06/15/441802.aspx

Also, this article will help those having similar problems:  

How to Remove Spaces From Recipient Aliases by Using the Exchange Management Shell
https://technet.microsoft.com/en-us/library/bb851499.aspx