Strategy for repairing a corrupt 2007 install
I recently had the installer for Exchange 2007 Service Pack 1 fail half way through the update and was left with a corrupted install. I had to use setup.exe /mode:recoverserver from SP1 to get it working again. However, the server recovery failed during the HubTransport role. Since then I tried to rerun the SP1 install with /mode:upgrade but it again failed during the HubTransport role. I tried uninstalling the HubTransport role and it fails when trying to unregister some DLLs.
Can anyone suggest a strategy for repairing or forcing a reinstallation of this corrupted install?
Thanks,
Dustin
August 28th, 2008 1:22am
You may try by digging dipper to search setup errors and try to solve it first.
Check event logs and setup logs for the errors/issues.
Exchange 2007 setup logs and how to use them to troubleshoot setup
Free Windows Admin Tool Kit Click here and download it now
August 28th, 2008 11:42am
Thanks. I hope this isn't out of the realm of this forum but it appears the problem is that setup cannot register or unregister the DLL "\Exchange\bin\Monitoring\x86\DiagnosticCmdletController.dll"
Trying it by hand with regsvr32 (/u) gives "This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001)."
I used the program depends.exe to check the dependancies of the DLL, and it reported msvcr80.dll and atl80.dll are missing. Sooooo,I went to another very similar Exchange installation and found those files, put them in the directory with DiagnosticCmdletController.dll and made the dependancies happy. However it gives the same error trying to register or register this DLL (which causes every setup.exe path I try to fail with "Process execution failed with exit code 3." in ExchangeSetup.log).
Maybe there's some prerequisite packages that need to be installed? I noticed the same error and symptoms in the log regarding exsmime.dll.
August 28th, 2008 8:00pm
Hi,
Is this the Exchange sp1 installation process(upgrade) or the first time entire Exchange Server installation(New)?
Error message when you try to uninstall Exchange Server 2007: "Process execution failed with exit code 5"
http://support.microsoft.com/kb/951183/en-us
Besides, please check event log to see whether 5023, 5003 has been logged there. If yes, then please try to follow the below steps to add the value to msExchHomeRoutingGroup.
1. Open the ADSIEdit tool, and connect to the configuration context.
2. Locate the Exchange Administrative Group object.
3. Open Properties for the Exchange Routing Group object, and copy the distinguishedName value.
4. Locate the Servers object in Exchange Administrative Group.
5. Select Properties for the Exchange 2007 Hub server, and find the msExchHomeRoutingGroup attribute.
6. Open the msExchHomeRoutingGroup attribute, and enter the distinguishedName value that you copied in step 3 for the Exchange 2007 Routing Group.
7. Verify that the Exchange 2007 server is visible in the Exchange Routing Group in Exchange System Manager.
8. Restart the Microsoft Exchange Transport service on the Exchange 2007 Hub server.
If it is not the case, then please send the Exchangesetup.log with application log to Xiu Zhang
Note: Please save application event log to *.evt file.
Hope it helps.
Xiu
Free Windows Admin Tool Kit Click here and download it now
August 29th, 2008 9:20am
Thank you for your detailed response. Thiswas a failed upgrade from Exchange2007RTM to Exchange2007 SP1. In trying to re-run setup several times, it had various errors related to MSI packages and Windows Installer registry keys. Following the advice from another threadI used "msizap" to remove the installer information and tried again. That left me with setup.exe failing due to not being able to register some components (DiagnosticCmdletController.dll and exsmime.dll).
I did try the KB951183 procedure but the command "regsvr32 DiagnosticCmdletController.dll" failed with "LoadLibrary: The application failed to initialize because the configuration is not correct." regsvr32 simply refused to register or unregister these dlls and thus setup could not continue. I also tried reinstalling ASP.net 2.0 SP1.
I'm glad to sayI do have the system running again. Due to the various MSI / Windows Installer / regsvr32 errors, I felt the problem had become deeper than just Exchange and possibly the operating system wasn't working correctly. Thus I backed up the storage groups, formatted the computer, reinstalled the operating system, and then ran Exchange2007 SP1 setup.exe with the /mode:recoverserver switch. It was able to restore the server roles using the configuration from Active Directory and the server is working again.
It's also worth noting that since /mode:recoverserver uses settings from AD to restore Exchange, I believe it does matter which version of setup is used to recover the server. I was concerned because SP1 installer failed before finishing, so I wasn't sure if the AD configuration had been updated or if it was the original version. I found you can use adsiedit.msc to go into your AD schema and check which version of Exchange2007 setup.exe you should use to recover the server, using the following information:
"Exchange 2007 uses the ms-Exch-Schema-Version-Pt attribute to keep track of the Exchange schema version that is installed. This attribute is not actually set on any objects. The rangeUpper for the initial release of Exchange 2007 is 10637; the value for Exchange 2007 SP1 is 11116. This attribute is always modified with changes to the Exchange schema."
Thanks again to those who replied. I hope some of the information here can help others with similar problems.
August 30th, 2008 11:49am
Thanks for yours sharing here.
Free Windows Admin Tool Kit Click here and download it now
September 1st, 2008 5:25am
That did it Thanks! i was close but installed the 32 bit version, I didn't thing the 32 bit version would fix me but tried it anyways then I found this thread with a link to 64bit verion. have a nice weekend
May 28th, 2010 9:26pm
I had the same problem trying to uninstall Exchange 2007 after Exchange 2010 installation. I
have noticed from the Exchangesetuplogs that the setup tried to register DiagnosticCmdletController.dll in x86 folder although a 64-bit platform.
I switched the dll in the X86 and AMD64 folders until the setup has not set the correct path.
Then I registered the
DiagnosticCmdletController.dll and the uninstallation was successful.
Free Windows Admin Tool Kit Click here and download it now
February 22nd, 2011 9:04am