ie10The rollout of Internet Explorer 10 has been a little bit rocky for some users. First – a number of hybrid graphics systems on higher end laptops weren’t compatible, but the IE installer didn’t make that clear. But beyond incompatibilities, a number of latent errors in user’s systems are causing IE10 to not install (or IE9 to not update or try to reinstall itself). The net is full of queries from users asking how to get IE10 to install, with a number of 9C errors (9C47, 9C48, 9C57, 9C59) after Windows Update failed. Inability to update IE9 is another common problem. So here are some possible solutions when the standard methods of removing IE9 or IE10 don’t work.

While a complete Windows reinstall is the best way to fix most of these problems, sometimes a user has a lot of installed applications that make a reinstall difficult or time consuming. Especially if this is the only issue the system is having. So I’ve collected a few common ways to ‘fix’ Internet Explorer and get Windows Update ‘clear’.

You are supposed to be able to ‘uninstall’ Internet Explorer 9 and drop back to IE8, but it sometimes can’t be found to uninstall. One ‘forced uninstall’ method is to remove all the associated mum files for IE9 and IE10. From a MS forum post:

They provided me with this command to force the uninstall of the IE10 update and roll the machine back to IE9. It needs to be run with admin rights.

FORFILES /P %WINDIR%\servicing\Packages /M Microsoft-Windows-InternetExplorer-*10.*.mum /c “cmd /c echo Uninstalling package @fname && start /w pkgmgr /up:@fname /quiet /norestart”

From there I was able to force the rollback of IE9 to IE8 with a simlar command (below)
—From Misrosoft MSDN Forums—
Question:
I want to uninstall IE9 however I cant see it in the installed updates section?
Answer:
If you can’t see it under Installed Updates, run this command twice from an command prompt (cmd.exe) with adminrights—

FORFILES /P %WINDIR%\servicing\Packages /M Microsoft-Windows-InternetExplorer-*9.*.mum /c “cmd /c echo Uninstalling package @fname && start /w pkgmgr /up:@fname /norestart”

This removes the IE9 with the help of the command line.
Credits go to Nadine K. (German MS Support Engineer).

The command to roll back IE9 will generate 3 access errors…OK through them and run the command AGAIN in the same command line window it will run without error.

Reboot the machine and the system will be on IE8.

I tried this – got the access errors, but it would not remove IE9 properly for one of my clients. It turns out their system had some issues with an existing update’s digital signature. My research showed this was a very common problem, for any number of updates. Trying to download and reinstall the update will show that it is already installed, even though it is damaged. A typical SFC scan also did not resolve the problem.

The fastest way to find out which update is damaged is usually to check the logs in the CBS directory. But the CBS.log file is huge and it can be tough to find the errors (Try searching for “, Error”). But there is another way – using the System Update Readiness Tool (SURT). When you run this tool (if it doesn’t fix the problem automatically), it will create a logfile called CheckSUR.log in the same CBS directory. This file will often list out the update (or updates) that are causing the failure and often the specific files that are triggering the error. The problem is these files can’t just be swapped out like a DLL.

But the damaged updates can be fixed. One method I found was fairly complex. You basically extract the files causing problems from the update downloads and then insert them into two temporary directories. You then run SURT and it will see those files and ‘repair’ the corrupted updates. Microsoft has an extensive TechNet article on how to do this.

The good news is you can let SURt do everything for you in many cases. Instead of going through the hassle of extracting and copying and ensuring you have the right pieces in place, you can simply copy the full update installer into a temp directory and let SURT work some magic:

What you should do is identify the package(s) that CheckSUR was not able to fix, they’re usually listed at the end of the log.  From there, you can take that information and go the Microsoft Download site and pull down the KBXXXXXX.MSU that corresponds to the package that you’re seeing failures on.  Since you’ve already run CheckSUR to get to this point, you can copy that .MSU to the \Windows\CheckSUR\packages directory (NOTE: This directory does not exist by default and must be created) and then re-run CheckSUR which will take care of the rest.

Now that’s EASY! I used this method and was able to resolve the corrupted updates which then allowed IE9 to be updated and IE10 installed!

If you’re using Windows 8, there’s an even better utility available called DISM:

The way this works in Windows 8 and Windows Server 2012 is different, in a fantastic way.  It’s called Inbox Corruption Repair and it brings the functionality of CheckSUR into Windows rather than requiring a separate download to get the utility like you do now.  This is exposed in two ways, the first is really unseen by the end user and happens when we detect a corrupted state when attempting to install fixes via Windows Update.  When this happens, we’ll fix the corruption silently and then re-install the prior packages.

Read the full article for details on how DISM works and the options available. Big hat tip to The Windows Servicing Guy for such well written articles about these vital tools!

Hopefully this will help some of you get out of corrupted update states that seem destined to require a full reinstall!