Exchange 2007 Management Shell

Posted on 2013-11-10
Last Modified: 2014-03-12
I have attached script, previously it was work just fine. Lately, we get below error generated for every mailbox before the it generated report file.

You cannot call a method on a null-valued expression.
At line:17 char:72
+     If ($Script:GroupList.ContainsKey($ADObject.sAMAccountName.ToString( <<<< ) + "\") -

eq $False)
You cannot call a method on a null-valued expression.
At line:22 char:72
+     If ($Script:GroupList.ContainsKey($ADObject.sAMAccountName.ToString( <<<< ) + "\" + 

You cannot call a method on a null-valued expression.

Open in new window

Question by:suriyaehnop
  • 2
  • 2

Assisted Solution

FutureTechSysDOTcom earned 200 total points
ID: 39637918
For a test, try eliminating all of the stuff in ToString() and use a manual value.  There were some service packs released recently for Exchange 2007, that could have affected some things.  If you can get it working by using a manual value rather than using the ToString() function then you will know it is just a syntax issue.

Chris M.
**Advertising deleted by Netminder 11 Nov 2013**
LVL 31

Expert Comment

ID: 39638563
Any chance we could see more of the script? I don't see it attached.
LVL 18

Author Comment

ID: 39643439
sorry forgot to attached the full script. I did use this script and run on my Exchange 2010 lab, it working fine but error appeared on my company Exchange 2007 SP2
LVL 31

Accepted Solution

LeeDerbyshire earned 200 total points
ID: 39644249
Does it crash out on the first mailbox, or does it get part of the way through the Get-Mailbox results before crashing? Try adding


as the first line inside the foreach loop. I think that should be enough to display each mailbox display name, so that you can see if it processes any at all.
LVL 18

Author Comment

ID: 39654429
does it get part of the way through the Get-Mailbox results before crashing.

Where to add Try adding $mbx.DisplayName?

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes my battle tested process for setting up delegation. I use this process anywhere that I need to setup delegation. In the article I will show how it applies to Active Directory
This article explains the steps required to use the default Photos screensaver to display branding/corporate images
This video demonstrates how to sync Microsoft Exchange Public Folders with smartphones using CodeTwo Exchange Sync and Exchange ActiveSync. To learn more about CodeTwo Exchange Sync and download the free trial, go to:…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question