I want to know what some installers do: mainly what files, folders, and registry entries they add, remove, or modify.

Lots of “ professional” programs are so poorly documented that it’s difficult to find the proper way to configure them, update them, etc.

InstallRite is a program which is able to take a “snapshot” before and after the installation of a program and then compare the snapshots. This allows you to know what was done and even to create a custom uninstaller. Unfortunately InstallRite seems to no longer be maintained and has not been updated since 2008.

  • Use Revo Uninstaller. It includes a feature that monitor file and registry changes in realtime. You can turn it on/off manually, so it can be used on any program. – Jay Aug 7 '12 at 15:31

There are several and I have tested at least 10-12, but the one I prefer and recommend is ZSoft Uninstaller. It is free and is good at finding difference without overwhelming you with extraneous clutter like most of these programs, even commercial ones tend to do.

I also use PC Magazine’s InCtrl 5 which is very good (enough to get Microsoft’s approval), but several years ago they stopped distributing their programs for free, but because it used to be free, there are still plenty of copies available (unfortunately not so with the newer InCtrl X.)

  • I had a look at ZSoft Uninstaller, but didn't saw anything allowing me to know what the installer did. I missed something ? – Gregory MOUSSAT Aug 10 '12 at 16:16
  • 1
    ZSoft does exactly what InstallRite does: it lets you take a snapshot before and after, then compare. What exactly are you looking for? Try InCtrl5. – Synetech Aug 11 '12 at 15:11
  • "There are several and I have tested at least 10-12, but the one I prefer and recommend is ZSoft Uninstaller." - I'm using this now. It's amazing! Thanks for the recommendation. – Mr Ethernet Dec 1 '19 at 11:48

What an installer truly does in detail cannot be known, except perhaps by reverse-engineering its binary instructions. Here are a few signs that you can check:

  1. Check for application folders in your Program Files directory. There is usually an entry in C:\Program Files\AppXYZ.

  2. Similarly check the system folders (C:\Windows\System32). Your app could have placed libraries (DLL/OCX/TLBs) here.

  3. Run CCleaner to see if it has created any registry entries. CCleaner also shows some other changes the app could have made such as registration of a MIME type, etc.

  4. Remember to check the .NET GAC (Global Assembly Cache). It contains all the .NET assemblies your app might have registered on your machine. It's usually in the folder C:\windows\assembly

  5. The obvious (but sometimes the obvious is overlooked!):

    • Start Menu and desktop shortcuts
    • Files in C:\users\USER-NAME\Application Data (CCleaner will show these)
    • Entries in Startup menu and boot.ini (run msconfig to check these)
  • 3
    They’re looking for an automated solution. – Synetech Aug 6 '12 at 2:35

For MSI installers there is a perfect debugging tool named ORCA (One Really Cool Application). It is part of Microsoft PLatform SDK (or Windows SDK). The tool can export all tables stored inside MSI database. Every table in MSI is basically a list of instructions describing the intended change on target machine.

  • Again, they’re asking about an automated solution, not about how they can manually figure out what the installer does. – Synetech Aug 10 '12 at 2:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.