Video Screencast Help
Search Video Help Close Back
to help
New in the Rewards Catalog: Vouchers for "Symantec Technical Specialist" and "Symantec Certified Specialist" exams.

Why Doesn't the Uninstall Process Uninstall Some Files and Folders?

Updated: 24 Sep 2007 | 2 comments
WiseUser's picture
0 0 Votes
Login to vote

Have you ever wondered why Add/Remove Programs doesn't remove everything you think it should? WiseUser enlightens us with these answers to a few questions from the "mysteries of life" folder.

There are four common reasons for why files may not be removed during uninstallation:

  • The components to which these files belong are marked as permanent. (This is done through the Attributes column of the Component table.)
  • None of the components to which these files belong have component GUIDs. (The value for the component in the ComponentId column of the Component table is NULL). Components without GUIDs are not managed by Windows Installer.
  • If the keypath of the component has a shared DLL refcount, then the component will not be uninstalled.
  • If the component is installed in the system folder and at the time of uninstallation there is an external shared DLL refcount for any one file in the component, then the component will not be uninstalled.

Folders are not removed during uninstallation because of one of the following reasons:

  • The RemoveFolders action is missing from the execute sequence table when both the CreateFolder table and CreateFolders action are used.
  • The folders were not created by Windows Installer, therefore it will not remove them unless told to do so.
  • Resources still exist in the folder.

Comments

Harsh Mokal's picture
25
Sep
2007
0 Votes 0
Login to vote

processes using file

To add this,if any process is running in background and if it is using any file which exist in application. Then that file may remain on system after uninstalltion.
Resolution for this use Kill process using custom action before remove file custom action.

Regards
Harsh M

songs's picture
04
Apr
2008
0 Votes 0
Login to vote

Still no excuse

While I understand the reasons provided for retaining certain artifacts, settings, etc. during an uninstall process, the amount and type of items remaining in the registry, the %WINDIR%\System32, and other system areas is, IMHO, unacceptable. When you find registry entries remaining that are pointing to a non-existant harddrive paths the arguments for retention are lost.

I've just been through an agonizing ordeal with Altiris DS install/uninstall. A seemingly simple install to a custom directory was nothing but simple. PXE server / configuration issues, deployment errors, etc.

Don't get me wrong, I think the toolset is awesome for what it does for managing your assets; however, those responsible for the install/uninstall processes need to do some more SQA, V&V on their product.