How to force uninstall software you can not uninstall

Ranked #36,003 in Computers & Electronics, #651,619 overall

Introduction

You're looking for a certain program that can do a certain thing you want and in the process you're installing several similar ones until you finally find the one that does exactly what you want. Since you don't need others you open the Windows Add/Remove Software program and start uninstalling the ones you don't want only to find that you can't uninstall some of them. An error occurs and they are still there - in the list of installed software. Ever had this happen to you?

In this lens I'll try to describe how to uninstall software that you have no need for and can't uninstall with using the standard windows uninstaller or the uninstaller that comes with the program.

What you need to know to uninstall a program manually

There are several things that happen during the installation of a program. First, of course, is the copying of files to the specified program folder (which is usually somewhere inside the Program Files folder). Also some files such as shared libraries (.dll files) can be copied into a folder inside Program Files called Common Files and some files such as drivers or shared libraries (again) are copied into the 'WINDOWS\System32' and 'WINDOWS\System32\drivers' folders. After that the installer makes some changes inside the windows registry. The windows registry is a unified place where all the settings for programs and for windows itself are stored. The installer can make changes inside the registry for several reasons. For example if a shared library needs to be registered. Or if certain types of files need to be associated with the program being installed, so that the user could open them (e.g. if you install Microsoft Word, then you will be able to open Microsoft Word documents). After this is done, a key is added to the windows registry in a place where the Windows Add/Remove tool looks for installed programs. During the installation all these operations are logged in a special file (e.g. setup.log), and the installation program usually puts that file inside the application's folder along with the uninstaller. When a user tries to remove a program through the Add/Remove tool, windows looks for the registered uninstaller inside the registry, and executes it. The uninstaller goes through the log file and undoes all the changes done during installation. That is, it deletes all the files that have been copied, all the registry keys the installer created etc.

However, if there is no log file, or if there is no record of the changes made to the registry the uninstaller might fail to uninstall the program, and it will stay there untill it is removed by other means.

So if a program won't uninstall, how do you perform a force uninstall?

Well, if you know how to work with the windows registry, you probably can perform a manual force uninstall.

Before I go into detail about how to do this manually, I'd like to say that this is pretty advanced stuff, and if you're not a power user, then perhaps you should consider using specialized software such as the Perfect Uninstaller which allows you to do this in just a few clicks.

Alright, let's begin!
First we have to find all the files that have been copied. Your failed attempts to uninstall may be due to a corrupted or sometimes missing uninstaller executable. If this is the case, the log files should still be in place and you will be able to delete files and registry entries the program has made during installation. Open the folder you have installed the program into, and look for files which are named uninstal.log or setup.log or something similar. The list of files that have been installed is inside this file, you can open it in your notepad and find all of the files that have been copied onto your system. Delete the files and you'll get rid of the program almost fully. Sometimes the log file is missing, however and the uninstaller fails because of that. In such a case you can delete the folder with the program and for many programs that should be enough. Like I said before some programs install files into Program Files\Common Files, so search that folder too. In the case where a program copies some shared libraries into Windows\System32 there's usually no way to find out if they have been copied by the program you're trying to uninstall or whether they are used by anything on your system - this is what is referred to as DLL-hell.

Let's now move on to the Windows Registry.
Again, I'd like to stress that if you're new to the windows registry and all of this stuff, and if you don't feel like experimenting with your computer, then, again, please consider using either the Perfect Uninstaller or similar software, don't hold me responsible for breaking your computer.

First, let's see how to remove the program from the list of installed programs. To do that you need to open the registry browser:

Click Start and choose Run in the menu (If you're using Windows Vista or 7 press Win+R on your keyboard).
Type "regedit" without the double quotes and hit Enter. The registry browser should open. If instead you get a dialog window saying running the registry browser has been disable or something like that, that's because the account you're using doesn't have administrative priviledges and usually you can't run the Add/Remove tool either. The only way out of this situation is to log in with an administrator account.

On the left side of the registry browser window is the registry settings tree, use it to navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall.
Inside that folder you'll find a lot of keys that belong to different programs. Some are named after the program's name, others as a mix of numbers and letters that makes no sense. Look through each of them until you find one that has the key DisplayName (on the right) with your program's name in it. Notice the key UninstallString - this key points to the uninstall program, and the log file usually resides in the same folder as that program. If you delete the key in which you've found the DisplayName key with the value equal to your program's name, then your program won't appear on the Add/Remove programs list, although it still will have some stuff stored in the registry.

Some programs create new entries in the registry to store their configuration options, these entries can usually be found in the HKEY_CURRENT_USER\Software or in HKEY_LOCAL_MACHINE\SOFTWARE - look for the program name or the name of the company that made the software. Don't be alarmed if you see entries for the programs you have supposedly uninstalled - there are programs that misbehave and create some of the registry entries when they are run instead of when they are installed. You can safely delete these entries if you have uninstalled a program. Don't delete Microsoft - that contains Windows settings as well. Some programs also make file associations, which are stored in several places in the HKEY_CLASSES_ROOT top-most folder.

Alright, if you have done all the previous steps, you should be free of the program you have installed, unless you couldn't find the uninstal log and the program copied some shared libraries into Windows\system32, but that's usually a rare occurence, so I wouldn't worry about it too much.

Poll Module

Loading poll. Please Wait...

Comments

Have something to add? Post a comment here

by

eugene2k

Hi, my name is Eugene and I'm a programmer and a freelance techincal writer.

Feeling creative? Create a Lens!