Half-Blood Programmer

If You Cannot Install/Uninstall IIS 7, Part II

I blogged about this last year as part I, http://www.lextm.com/2011/02/if-you-cannot-installuninstall-iis-7.html
In this part, I am going to tell you more about the corruption.

Microsoft releases a tool for you to detect CBS (component based setup) issues, named System Update Readiness Tool,


You can download the one that matches your system and then execute it. Note that this tool was designed to fix some of Windows Update issues, so it does not only report CBS issue details, but also can resolve some CBS issues.

After executing this tool, it will generate a log file here,


By opening this file, you can see what has been broken and attempt to fix that,


I suggest once found errors in this log file you open a support case via http://support.microsoft.com to ask for assistance. I attempted to resolve the errors on my box, but could not resolve them all manually.

Anyway, an in-place Windows upgrade usually resolves all issues, which is what I did last time,


Note that this is simpler than completely reinstalling Windows on the box.

(Updated: Microsoft finally published a similar article here to summarize the steps, http://www.iis.net/learn/troubleshoot/installation-issues/troubleshooting-iis-7x-installation-issues).

4 thoughts on “If You Cannot Install/Uninstall IIS 7, Part II

  1. Anonymous

    I struggled with this for two days with umpteen installs and uninstalls and reboots.

    In the end I fixed this on my Windows 7 x64 machine after seeing in the event log (application->performance counter errors) that it was failing because it was looking for the aspnet64 registry option in a key named :


    However, this does not exist, but this does:

    So to fix it just create a key named ASP.NET_64 alongside the existing ASP.NET_64_2.0.50727 and put a “Performance” key inside it. I didn’t bother filling the rest of the data inside “Performance key” and it didn’t seem to mind.

    The tick appeared in the asp.net feature and my web service now actually runs and shows functions inside it. No more ManagedPipeline/locking errors.

  2. Eugene

    This is just awesome! You helped me VERY MUCH! I digged all the internet, but couldn’t find a solution. The adding this key has solved my problem! THANKS A LOT!!!

Leave a Reply