How to uninstall a hotfix or Service Pack via the Recovery Console ?


Introduction

This article explains you how to uninstall a Microsoft hotfix installed using Windows Update site or through Automatic Updates. This procedure is useful in scenarios where installation of a recent update prevents you from loading Windows XP in any startup modes (including Safe Mode Command Prompt, Safe Mode etc).

When you install a hotfix, it automatically creates a hotfix uninstallation folder in your Windows directory. The hotfix backup folder usually has the following naming convention:

$NtUninstallKBnnnnnn$ - Where the nnnnnn refers to the update / Knowledgebase article ID. You can gather more information on that update by visiting this page: http://support.microsoft.com/?kbid=nnnnnn

Replace nnnnnn with the actual numbers. For example: http://support.microsoft.com/?kbid=873333

Uninstalling a hotfix using Recovery Console

Boot into the Windows XP Recovery Console using the Windows XP CD-ROM or using the startup option (if available). See article How to install and use the Recovery Console in Windows XP for more information.

Type in the password for your installation of Windows XP, and press Enter.

When you see the C:\Windows Prompt, type this command:

DIR $*

This lists all the folder starting with the letter $. All the $NtUninstall.... folders are now displayed. $NtUninstall folders are nothing but the Hotfix backup folders, which contains the original version of the system files, before the hotfix was installed.

Note down the Hotfix numbers matching the date you installed the problematic Hotfix(es). Spot the Hotfix that you want to remove, and change to that directory by typing this:

CHDIR $NtUninstallKBnnnnnn$\spuninst

Example:

CHDIR $NtUninstallKB873333$\spuninst

Once you're in that folder, you'll need to execute the spuninst.txt which contains DOS commands, similar to a .BAT file. The command instructions in this spuninst.txt file will actually copy the original system files to their respective folders. To run the spuninst.txt file, type this:

BATCH spuninst.txt

The hotfix will be uninstalled. Restart, and see if the problem is resolved. If Windows loads normally, open Add/Remove Programs and completely uninstall that particular hotfix. This ensures that the additional files, Add/Remove entries and other registry keys added by the Hotfix are removed completely.

If Windows does not load, load Recovery Console again and then follow the above procedure to remove the additional Hotfixes one at a time, to isolate the problem. If you install multiple Hotfixes in a single session, it's difficult to point out which of the installed Hotfixes is preventing Windows XP from loading. Hence you need to troubleshoot it on a trial and error basis, using Recovery Console.