Rob Garrett - Blogs

Welcome to Rob Garrett - Blogs Sign in | Join | Help
in Search
Google

Software/Technology Discussion

Software and Technology Tid-bits

Reinstalling COM+ on Windows XP

I've been experiencing some problems with COM+.  I noticed a problem this week when I went to open an ASP.NET application in Visual Studio.NET (I haven't been developing web apps for a while).  After some investigation I found out that IIS 5.1 was not serving ASP and ASPX pages and the event log was spitting out nasty error messages about COM+ being corrupted.

There's lots of information out there on the Internet about reinstalling COM+ on Windows 2000 but the instructions for Windows XP weren't clear.  I read in a few places that you need to remove the COM+ catalogs, remove a registry key, re-register the OLE server DLLs and then "Add/Remove Windows Components".  When I went looking for a check box option for COM+ services in "Add/Remove Windows Components" I didn't find it anywhere, which is what I expected because COM+ is built into XP, unlike Win2K.  What I failed to understand at the time was that simply clicking next on the add/remove wizard will cause Windows to rebuild COM+ catalogs and registry entries.

I found the solution (one of many, as mentioned) on Symantec's web site, of all places.  It seems that Ghost 9.0 sometimes comes across the corrupted COM+ problem. Below are the instructions with my annotations:
  1. Start Windows Explorer.
  2. Do one of the following:
    • In Windows 2000, browse to the C:\Winnt\System32 folder.
    • In Windows XP/2003, browse to the C:\Windows\System32 folder.
  3. Right-click the Clbcatq.dll file, and then click Rename.
  4. Rename the file to ~Clbcatq.dll.
    Make sure that you include the tilde (~) at the start of the file name.
  5. Restart the computer.
    Restart in safe mode so that the COM+ catalogs can be removed without the files being locked.
  6. On the Windows taskbar, click Start > Run.
  7. In the Open box, type regedt32 and then click OK.
  8. In the Registry Editor, find and delete the following key:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3

    As a safety measure, I renamed my key to something else.
  9. Exit the Registry Editor.
  10. Click Start > Run.
  11. In the Open box, type cmd and then click OK.
  12. At the command prompt, type the following lines, pressing Enter after each line:

    cd %windir%
    rmdir /s registration


  13. Close the DOS Window.
  14. Start Windows Explorer.
  15. Do one of the following:
    • In Windows 2000, browse to the C:\Winnt\System32 folder.
    • In Windows XP/2003, browse to the C:\Windows\System32 folder.
  16. For each of the following files, right-click the file and choose Copy, find the Regsvr32.exe file, right-click it and choose Paste.
    • Ole32.dll
    • Oleaut32.dll
  17. Restart the computer.
    Exit out of safe mode, COM+ doesn't install properly in safe mode. Worked for me in normal mode with logged on user with administrative rights.
  18. Click Start > Settings > Control Panel.
  19. Double-click Add/Remove Programs.
  20. Click Add/Remove Windows Components.
  21. Click Next to proceed with reinstallation.
    This will refresh your COM installation.
  22. Check the COM+ services are started (run SERVICES.MSC from Start button, run).
    I set both of the two COM+ services to start automatically.
  23. See if you can browse the COM+ components on the local machine in Component Services, under Control Panel, Administrative Tools.

Share this post: Email it! | bookmark it! | digg it! | reddit!
Published Wednesday, April 20, 2005 12:01 AM by Rob Garrett

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

 

Kevin said:

This is the worst instruction I've ever encountered. I followed the instructions exactly and no sooner after I rename the clbcatq.dll file my computer froze up. Would freeze every time I tried to log in. This is a work computer and THANK YOU VERY MUCH FOR GETTING ME FIRED!
May 19, 2005 4:32 PM
 

Kevin said:

My apologies.

I have a dell computer and turns out that if the keyboard is not from dell as well, the computer freezes up in safe mode. I followed the rest of the method and it worked perfectly. Sorry about my hastiness in posting. Just want everyone to know that I tried this on a Windows XP machine and it worked.
May 19, 2005 5:42 PM
 

Valerio said:

Hi,
I followed the instructions but when i reinstall COM+ i have an error and my IIS is still not able to compile ASP pages.
do you suggest me to reinstall windows? any help will be appreciated
thank you
July 13, 2005 2:48 AM
 

Rob Garrett said:

Okay, been busy and haven't had chance to reply here, but here goes.

1. These instructions are not mine, I found them on Symantec's website - if you're computer is hosed because of corrupted COM and these instructions either don't help or make your problem worse, then don't blame me - call Symantec.

2. When messing with the registry, or COM infrastructure, there is always a chance that your computer will become unusable. Backup your computer first (duh). If you're attempting to fix a work computer, my suggestion would be to call your tech support. If you are tech support, then either call Microsoft or search Google (which is what I did).

3. I'm not going to advise that anyone reinstall their computer - this is the last resort, and if you feel that this is the only avenue left to take then you should make that decision yourself. I remain blameless for the loss of any data, or failure to correct the problem, due to a reinstall
July 13, 2005 10:19 AM
 

Andy said:

Actually, these instructions work fine and WILL get the COM+ service working again.

By the way, you CAN view the COM+ checkbox in Add/Remove Programs > Add/Remove Windows Components by doing the following:

Use Notepad to remove Hide from the COM= line in %SystemRoot%\Inf\Sysoc.inf

Before Editing: com=comsetup.dll,OcEntry,comnt5.inf, hide, 7
After Editing: com=comsetup.dll,OcEntry,comnt5.inf, 7


Removing the word "hide" just makes the COM+ option checkbox visible in the Add/Remove dialog box.


However, you need to do a bit extra in order to get ASP and ASP.NET fully working again. Here's what yo udo next as part of the FULL fix to the issue:

Step One:

Check Event Log:
Check your Event Viewer for these errors...
MSDTC errors (4427,4691,4135 are common error events for this)
W3SVC Event 36 "The server failed to load application '/LM/W3SVC/1/ROOT/'. The error was 'Class not registered"




Step Two:
Open "Control Panel" and then "Administrative Tools" then Open "Services"...

Locate the "Distributed Transaction Coordinator" make sure the process is "Started" and "Automatic"
(If its not, open a command line and type "msdtc -install", then try and start the service)

Open a command line and type the following...

cd %windir%\system32\inetsrv
rundll32 wamreg.dll, CreateIISPackage

(NOTE: "CreateIISPackage" must be typed exactly; it is case-sensitive.)

regsvr32 asptxn.dll

(wait for a dialog box to notify you asptxn has registered correctly)

Then, in the cmd prompt window type IISRESET

Open "Control Panel" then "Component Services"...

You should see all three IIS COM+ applications that have been recreated


Finally, open "Control Panel" and then "Administrative Tools" then Open "Services" and just make sure that

DTC
COM+
World Wide Web Publishing

are all running.....

As a very final check just stop and restart the web service in IIS itself.

With a bit of luck the COM+ and ASP/ASP.NET issue should be resolved.





July 30, 2005 6:28 PM
 

Rob Garrett said:

Awesome response Andy, these instructions will be very useful.

Thanks.

R.
July 31, 2005 5:16 PM
 

Andy said:

Cheers Rob and nice one for having this blog and allowing folks to share knowledge.

I work for a software house in Regent Street in London developing web-based content management systems and got the shock of my life when I fired up Visual Studio.NET this weekend to do a bit of work :(

What is bugging me now is what caused it to happen in the first place and could it happen again?

Was it a Windows update that went wrong, a software install (I recently put in PGP, Open Office and some XML development tools) or is this just a seemingly random issue?

Anyway, once again thanks for letting me share what I found and I hope it works for others.

Andy
July 31, 2005 5:48 PM
 

Rob Garrett said:

Hmmm, I wish I knew what causes COM+ corruption. I found mine on my server when I installed OWA with Exchange. None of the web links nor spell check worked because ASP was broken. After some searching on Google I found out that this was because COM+ was corrupted. From what I read, it could be any installation that went wrong.

Always a pleasure talking with someone from my home land :)
July 31, 2005 8:00 PM
 

Oleg said:

I had COM+ screwed up on XP computer. Could not run ASP.NET. I followed your instructions and COM+ got fixed. Thanks a lot !
August 15, 2005 10:57 AM
 

Rob Garrett said:

Glad that this post was useful.

It seems that a lot of people are having problems with broken COM+, and I am happy that my post is of great help to those people frustrated with this problem.
August 15, 2005 11:31 AM
 

TrackBack said:

August 25, 2005 1:19 AM
 

Mel said:

I can't do the second part that Andy suggests, as my comp can't find wamreg.dll. Any ideas?
September 3, 2005 9:56 PM
 

Justin said:

Great post...I would like to note that removing the Registration command gave me a sharing conflict (yes even under safemode) and so I rebooted into Safemode once again and was able to take care of it.

I also followed Andy's post, but I'd like to note (for anyone curious) that even though it shows up in Add/Remove, it would allow me to uncheck it, so I'm not sure there's value to the visibility.

Thanks again!
December 21, 2005 11:36 AM
 

Justin said:

typo:

actually meant:

"it would NOT allow me to uncheck it, so I'm not sure there's value to the visibility."
December 21, 2005 11:37 AM
 

Mike said:

Hi,
I've been trying to follow these instructions to reinstall COM+, but it doesn't seem to work for me.
While it is attempting to install COM+, it gets an error:
Sub-component COM+ raised an exception while processing the OC_COMPLETE_INSTALLATION setup message.
d:\nt\com1x\src\cmplussetup\comsetup\ccompluscore.cpp (line 565)
Error Code = 0x80040206
An unexpected internal error was detected
The COM+ eventclasses could not be registered

I am also having issues with MSI, but I'm not sure if the root cause is in COM+ or in MSI, or something else.
This all started when I tried to install Norton 2006, and my computer has been toast ever since. The failed install seems to have screwed up some registry protections - I have followed everything I can find on the Symantec website, including manual un-install and attempted re-install, but I'm still stumped.
Any ideas much appreciated...
Thanks, Mike
PS I had similar problems with lockups in safe mode, I used "safe mode with command line" and it seemed to work better, I'm not exactly sure why.
January 28, 2006 9:34 PM
 

Rob Garrett said:

Eek, that doesn't sound too good. Have you tried reinstalling the MSI installer? You might want to drop Symantec a line and tell them about Norton.

I hate to chime an old note, but if you're a Norton fan, I would suggest buying a copy of Ghost, and imaging your machine before installing system apps. This was the best purchase I've ever made and has saved me hours of not having to resinstall the OS.
January 30, 2006 4:54 PM
 

Mike said:

Yes, I tried reinstalling the MSI installer, no good.
I dropped Symantec a few lines of gradually increasing frustration, unfortunately they were not able to help.
I've now reinstalled Windows ("repair" install, not install from scratch), and it's looking better but still not quite there. I suspect that there are still some lingering registry permission issues; I guess a Windows repair install does not necessarily reset all the protections. Anyway it's limping alomg now...
At this point I am the polar opposite of a Norton fan :(
Thanks,
Mike
February 2, 2006 2:23 AM
 

John McClane said:

Finally i got my iis 5.1 working on windowsXP. Thanks to this tutorial, and one comment. It took me almost a hole day, but i am glad that at least i didn't have to reinstall XP. I already was thinkin about reinstalling XP or using vmware or another pc to do my work. That could have taken me few more days... So i very apreciate for this post.
February 17, 2006 5:46 AM
 

Farrah said:

THANKYOU!!!

I wasted hours on the phone with MS tech support yesterday trying to get this problem figured out. Each person I talked to passed me on to another, whom they said was part of their "IIS" team. I lost my temper when the second to last person asked me what IIS was. The outcome? Not one of the 10 or so people I talked to could help me, they wasted several hours of my time, and in the end some woman told me, "That sounds like a professional problem, we're going to have to charge you $245 to figure it out" WTH? Screw MS tech support! Yes, I'm a little bitter...

Anyway, I had tried multiple things on my own, including fixes from the MS website. This finally did the trick (along with Andy's followup instructions). Thankyou, thankyou, thankyou!

February 23, 2006 2:25 PM
 

Krystan honour said:

Very very very helpful thanks so much
March 6, 2006 7:17 AM
 

Harald said:

Hey Rob and Andy!

Got COM+ and ASP.NET up and running again thanks to your instructions after a failed SP 2 installation. Was just about to insert the CD for an other repair session - Ugh. Thanks a lot!



April 2, 2006 8:23 AM
 

Rob Garrett said:

Any time, glad I could help.
April 2, 2006 12:40 PM
 

Svein said:

COM+ Setup Error

Sub-component COM+ raised an exception while processing the
OC_COMPLETE_INSTALLATION setup message.

d:\nt\com\com1x\src\complussetup\comsetup\ccompluscore.cpp (line 565)
Error code = 0x80040206

An unexpected internal error was detected
The COM+ event classes could not be registered.

Anybody has ideas on how to get COM+ reinstalled ?
Thanks,
Svein
April 11, 2006 1:18 PM
 

James Davenport said:

I went through the procedure posted above but I still have the same problem. When I open COM in component services I get an error and IIS still won't server up asp pages. I am running Windows XP Media center edition IIS 5.1 . Anyone know if media center edition causes unique problems??
April 15, 2006 10:45 PM
 

Dain Bramage said:

Excellent procedure. Thanks very much for taking the time to help us all out.
May 10, 2006 6:18 PM
 

Kevin C said:

Thank You!!!  I just got a new computer with XP Media Center 2005.  I installed IIS and got the dreaded 500 error while trying to run ASP/ASPX pages.  After days of looking for the solution, I finally found this article.  It fixed my issue immediately.  Thanks again!
September 6, 2006 9:56 PM
 

McKlee said:

Thanks ! It worked great. Just for those having trouble with MSI & Com+ installation, be sure to hava document & settings available (not redirected to a network share...)
September 15, 2006 9:44 AM
 

Peter Fouche said:

Have tried several varients of the above fix, but keep getting

Sub-component COM+ raised an exception while processing the
OC_COMPLETE_INSTALLATION setup message.

d:\nt\com\com1x\src\complussetup\comsetup\ccompluscore.cpp (line 565)
Error code = 0x80040206

An unexpected internal error was detected
The COM+ event classes could not be registered.

I can't get detail from the app log (because com+ is dead?) and I can't do an uninstall of the last program I installed just before everything died as the installer is dead too.

Using XP SP2 on a new Dell 820
September 18, 2006 5:08 AM
 

Don said:

I also have the same error as Peter and have tried all variations of the fix but continue to have the same problem. I can do the uninstall steps ok in safe mode but I blue screen with a memory dump when trying to log in as non-safe mode. I suspect the non-safe mode is trying to load services which are dependent on COM+ that are giving memory errors. I was going to disable all services in safe mode and try again. After a severe virus attack that blew my PSC and Mobo, I've already spent the guts of 2 months trying to get back to a working pc, so any suggestions would be greatly appreciated. I am also getting failures on the Microsoft update screen if that clue helps any. Thanks!!
November 15, 2006 5:55 PM
 

Roelf said:

I have merged 2 patitions into one on a customers HDD (FAT32) using partition magic. after the merge the pc continues to reboot just after xp started to load, I run windows repair (home edition) and 20 min before the end I get the com+ error msg. I have started the computer using ERD Commander and did the changes in your BLOG, but still get the same problems. anyone having any idea what else I can try, pls let me know. Thanx for a great blog? Cheeerio
December 12, 2006 6:21 AM
 

Mike Meisinger said:

I found the following on Mohamed Sharaf's Blog. After following the above suggestions, I was still getting errors when trying to expand Component Services and MSDTC would not appear under Services (Local). I followed these instructions and I can now expand Component Services and MSDTC appears under Services )Local). ASP and ASP.NET may not work if IIS is installed After Windows XP SP2 -------------------------------------------------------------------------------- Primary Common issue associated with: Distributed Component Model (DCOM) Primary Audience issue associated with: DSV Scenario / Issue If MSDTC is not running as NetworkService then ASP and ASP. NET will not work on a Windows XP SP2 machine. MSDTC might not be running as NetworkService if IIS is installed AFTER you install Windows XP Service Pack 2. You might receive the following error when accessing a web page from this machine: [The page cannot be displayed The page you are looking for is currently unavailable. The Web site might be experiencing technical difficulties, or you may need to adjust your browser settings.] WinSE 69962 Summary of Resolution To resolve the issue you must uninstall MSDTC, clean the registry entries for MSDTC then reinstall IIS. Reproduction and Resolution Steps Steps to resolve the issue. From the command line issue a 'Net stop msdtc' command. From the command line issue a 'msdtc -uninstall' command. Using Regedit, delete the key, including all of its subkeys and values, HKLM\Software\Microsoft\MSDTC. From the command line issue 'msdtc -install'. From the command line issue 'net start msdtc'. Uninstall IIS from the Add/Remove Windows Components. Reinstall IIS from the Add/Remove Windows Components.
December 20, 2006 6:15 PM
 

Abdullah Cabaluz said:

Thanks a lot Rob Garret. I followed the steps 1 by 1 and it is solved. Note: I excluded safe mode step, because it freezed in safe mode. Besides it still worked for me.
April 3, 2007 10:28 AM
 

Brandon said:

What do I do if I can't rename cltcatq.dll on a normal boot or safe mode? I'm in Windows 2000, it tells me the file is in use by windows.
April 6, 2007 8:04 PM
 

Brandon B. said:

Something I've found, in Win2k... if by some strange reason your Clbcatq.dll is in use by windows, you can crack open notepad, dump a few characters into a file and save it as ~Clbcatq.dll and that works too.
April 6, 2007 8:25 PM
 

Sprize said:

Have tried all the above but same as Peter got the error: Sub-component COM+ raised an exception while processing the OC_COMPLETE_INSTALLATION setup message. d:\nt\com\com1x\src\complussetup\comsetup\ccompluscore.cpp (line 565) Error Code = 0x80040206 An unexpected internal error was detected The COM+ event classes could not be registered. Was anyone able to solve that? To rule out disk errors had them scanned on boot To rule out MS file corruption cmd -> sfc.exe /Scannow Hope there's someone out there who's fixed it,...
November 12, 2007 4:54 PM
 

James Stuart UK said:

Just used your instructions to fix corrupt COM+ on XP w/SP2. The comment about going into Safe Mode did the trick. Thank you so much Rob!
November 13, 2007 6:06 PM
 

Alexander said:

To those guys who have this error: "Sub-component COM+ raised an exception while processing the OC_COMPLETE_INSTALLATION setup message. d:\nt\com\com1x\src\complussetup\comsetup\ccompluscore.cpp (line 565) Error code = 0x80040206 An unexpected internal error was detected The COM+ event classes could not be registered. " I had a problem with some virus on my laptop. It corrupted almost all registry. After antivirus procedures and repairing Windows from the disks everything seemed worked fine. After automatic updates completed and system restarted a problem appeared with Windows Installer Service that it could not be accessed. Finally I discovered that the problem was in corrupted COM+. Followed the instructions here got the above error. You should just click OK and proceed further with installation, then restart. Finally, windows installer start working and was able to reinstall .NET 2 and all the patches. Thanks for post.
November 24, 2007 6:14 PM
 

DRA2256 said:

Worked like a charm for me. Thanks!
January 8, 2008 2:59 PM
 

Sunil said:

Grreeeeaaaat.... I was able to resolve the problem quickly with the help of this article.... Long live the author
March 8, 2008 1:31 AM
 

Harry Balzewski said:

Great article, my friend. Windows can be such a frustrating platform for developers. My local IIS decided to die yesterday because of this COM+ issue and your article saved me a lot of time resolving the problem.
April 20, 2008 6:09 AM
 

Free PC Security Tips said:

Looking for even more good content on internet security and identity theft prevention tips then have a look here

July 7, 2008 6:09 AM
 

what causes xp computer to restart when you try to load extra software said:

July 7, 2008 5:03 PM

Leave a Comment

(required) 
(optional)
(required) 
Submit

Blurb


Head Shot
Rob Garrett is a British Expat living in Maryland USA. Rob is a trained software engineer and experienced in Windows .NET development.

Rob enjoys listening to Rock music, posting to blogs, driving in the country with the sunroof open, beer (not in conjunction with country driving) and spending time with his family.

This Blog

Syndication

Powered by Community Server, by Telligent Systems