Page 1 of 1

[V7.001] (Un)InstallMSI Leaves Registry Entries Behind

Posted: Tue Aug 21, 2007 1:05 pm
by H4nd0
We have two product versions: v1.9 and 2.x.

If I install v1.9 the two following reg keys are created automatically via IA:

HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{A77DC58D-BA1C-472A-8551-EFFC94A3CBC0}
HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\FireDaemonPro

When I uninstall via Add/Remove programs - both are removed correctly.

If the v2.x install I check for existence of the older version via "Get Install State".

In the Install Application Pre-Requisites section I use Install/Remove MSI Package using the legacy Product Code and the action string UNINSTALL=YES.

That works fine HOWEVER under these circumstances, HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\FireDaemonPro is not deleted and it continues to appear in the Add/Remove programs.

Is this a bug? Or should I just delete the registry key after the uninstall?

Cheers,

Posted: Wed Aug 22, 2007 12:19 am
by pfennig
If you don't want to leave the option to the customer whether or not to have both versions
of your app installed parallely, which I assume since you seem destined to remove these
keys ;), then you could just keep the same GUID for the product code as the previous
version had and the setup does the magic for you.

Posted: Wed Aug 22, 2007 6:42 am
by H4nd0
Give the products are "technically" different then I assumed (erroneously?) that two separate Product Codes were required.

I'll try making them the same (the Product Codes that is) and see what happens. Irrespective an uninstall should delete _all_ self generated registry keys.

Posted: Wed Aug 22, 2007 11:51 am
by pfennig
OK, technically every update is different. Otherwise you wouldn't need one :)

I think it's common practice to keep the product code the same as long as the main version number doesn't change. There might be reasons to change it, but if you want a version to
recognize and uninstall a previous installation you have to keep the product code.