How to remove Windows Update uninstall files on Windows Server 2008

disk-space-utilizationfilesupdatewindows-server-2008

I'm running Windows Server 2008 Standard running in VMware. It has 2 disks:

  • system disk: 16 GB
  • data disk: 500 MB

I installed Visual Studio 2008 SP1 + MSDN and some small tools and libraries that don't take much space. Over time the system disk's free space has been going down (I suspect because of regular system updates – NetFx (.NET), service packs, and regular updates).

Questions 1
How do you remove Windows Update uninstall files from Windows Server 2008?

Question 2
I also found lots of files in C:/Windows/Installer folder.
Is it possible to determine which .msp file goes with which patch?
I would like to delete some of them, because they do take a lot of space.

Best Answer

Associating the files with patches. The "WINDOWS\Installer\" folder has several key sub-folders.
You can search for the sub-folder name (without the braces {}) in the registry.

The key can be searched within the "HKLM\SOFTWARE\" tree
to get the Software association.

The key would be placed in the Installer sub-tree on the name ENU_GUID.

Similarly, in the registry path "HKEY_CLASSES_ROOT\Installer\Products\",
The key will usually match in a subtree against the "ProductIcon" name.
There will be a "ProductName" field next to it that will give you an association.

This search should be script-able with a dir WINDOWS\Installer /d output
stored to a text file that is processed with a registry search.


The .MSP files have a level of indirection in the registry.
You should search for the MSP name first in, HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\

That will give you a Patch number (the sub-tree name string) which is to be then searched again in the same path as above. The associated registry sub-tree will give you details for the patch.

Meanwhile, the mouse-over context in my Windows XP explorer also gives basic information on the patch. Have you checked that already?


Older data:
Use msizap to remove orphaned cached Windows Installer Data Files to increase free disk space.

Msizap is a command-line tool that can delete the configuration data that Windows Installer maintains for products that it installs, including the directories, files, registry subkeys, and registry entries in which Windows Installer stores configuration data.

Running msizap.exe with the G parameter removes orphaned cached Windows Installer data files for all users

The article discusses up to Windows Server 2003.
Update: This Microsoft KB description also limits at Server 2003.
It should work for Server 2008, or there would be another version for it.
The article describes existence of two versions.

There are two versions of MSIZAP.EXE:
MsiZapA.exe (for use in Windows 95, Windows 98 and Windows ME), and
MsiZapU.exe (for use in Windows NT, Windows 2000, Windows XP, and Windows Server 2003). The appropriate executable should be renamed MsiZap.exe.


Download references -- in case that link goes dead.

Msizap can be downloaded as a part of the Microsoft Windows Server 2003 Support Tools or the Windows Installer CleanUp Utility (EXE). I was unable to find the Windows Installer CleanUp Utility by searching Microsoft’s download site, so note that as of today the file’s name is msicuu2.exe if you the above link goes dead in the future.

If you don’t want to install the Windows Installer CleanUp Utility, use a program such as Universal Extractor (aka UniExtract) to extract the individual files. Once you extract the files, you’ll notice msizap.exe does not exist, but you will find MsiZapA.exe and MsiZapU.exe.