SHARE YOUR EXPERIENCES
Share your Exchange and Outlook discoveries, comments, solutions to problems, and experiences with products. Email your contributions (500 words or less) to r2rxadmin@windowsitpro.com. Please include your full name and phone number. We edit submissions for style, grammar, and length. If we print your submission, you'll get $100.

As the senior consultant at Convergent Computing, I recently ran into a problem in which one of our Exchange Server 2003 bridgehead servers had Windows Management Instrumentation (WMI) repository corruption. I was able to correct the problem without shutting down the server.

I noticed the problem when I wrote a VBScript script that used WMI to collect SMTP queue performance data from our Exchange 2003 servers. One server was reporting error 0x80041010 (the specified class doesn't exist). Further investigation showed Event ID 9104, The MAD Monitoring thread was unable to read the CPU usage information, error "0x80041033," which indicated WMI repository corruption. I confirmed this conclusion by using the Windows Management Instrumentation Tester (WBEMTest), which is part of every OS installed with WMI. I found that a lot of the Exchange-specific WMI classes didn't exist.

On the Microsoft Developer Network (MSDN), I found a Web page that provided instructions for reinstalling WMI, but you can't recover the Exchange-specific WMI classes by following those instructions. You can reinstall these classes by reinstalling Exchange 2003 Service Pack 1 (SP1), but that requires Exchange services downtime.

I discovered a way to fix the problem without interrupting Exchange services. If you ever need to reinstall WMI but don't want to shut down your Exchange server, follow these steps:

  1. Stop the WMI service (winmgmt.exe) on the problem server. This action usually also stops the Microsoft Exchange Management service. If not, stop that service.
  2. On the problem server, rename the %systemroot%\system32\wbem\Repository folder to %systemroot%\system32\wbem\Repository\Repository.bak.
  3. Copy the %systemroot%\system 32\wbem\Repository folder from a known good Exchange 2003 or Exchange 2000 Server machine to the problem server.
  4. Start the WMI and Microsoft Exchange Management services.
  5. Test WMI by using WBEMTest to open the Win32_PerfRawData_SMTP SVC_SMTPServer class in the root\cimv2 namespace.