Can I safely remove *.msi and *.msp files that are in C:\Windows\Installer but are not the mentioned in the registry?

My C:\Windows\Installer folder has grown over 10 GB. I noticed that some *.msi and *.msp files are in C:\Windows\Installer but not the mentioned in the registry (e.g. I can see a file named "104a0288.msi" in C:\Windows\Installer but searching for "104a0288.msi" in the registry editor doesn't bring any results). Can I safely remove those files?

I use Windows 7 SP1 x64 Ultimate.


The article below shows different ways to delete unused Microsoft Installer/Patch files from the Installer folder. It is a very good and descriptive article.

3 Ways to Safely Delete Unused MSI and MSP Files from Windows Installer Folder

In summary, these are the 3 ways:

  1. Use MsiZap (by Microsoft) This is an old Microsoft utility. Unfortunately not supported any more but still used by people. Because it is not supported any more you use this tool at your own risk. It can be found here.

  2. Use a tool called WICleanup (by KZTechs) This is the option I used and it cleared 15Gb of data for me and I haven't had any problems since. There are a few notes I would add to the article on its use;

First, I had trouble with the download link, so I found the utility downloadable here.

Then, when deleting files using the UI you have to confirm each delete followed by a confirmation prompt. I.e. "Are you sure you want to delete? Yes/No?" followed by "The file has been deleted. OK". I had hundreds of files and this was not something I wanted to do for each.

The zip download has a UI executable and also a command line executable. To use the command line version, make sure you open a command prompt as administrator. Then navigate to where the exe is located and execute the following command wicleanupc -s The "s" makes the deletion of the files silent and no need to confirm.

  1. Manual deletion (not recommended) The last option is largely manual but not recommended. To figure out if a file can be deleted, it should NOT exist in the registry. There may be some useful scripts available to guide you to files that can or cannot be deleted, but the actual deletion is manual and therefore prone to error or deletions by mistake.

MsiZap only discovered one orphaned msi for a whopping savings of 100 MB. After that I tried PatchCleaner and cleaned up 20 GB.

PatchCleaner took about 20 minutes to parse the 30 GB of Windows Installer cache (seriously, MSFT, wtf) and then with one click was able to free up 20 GB.

Bravo.