krutherford
Posts: 5
Joined: Tue Nov 13, 2007 4:20 pm

Issue with 'Never Overwrite' when upgrading

Tue Nov 13, 2007 4:29 pm

There seems to be an issue with the 'Never Overwrite' attribute for registry key components. When checked, and the installer is upgrading an exisiting version, it will remove the reg key instead of leaving the key as it was. It seems that either the logic is backwards with the attribute, or the label shoule read, 'Always Remove'.


This is only an issues when it's upgrading an exisiting version. Doing an uninstall on a previous version and then installing the newer on, the reg key component is there.

Cosmin
Posts: 5797
Joined: Tue Jul 10, 2007 6:39 pm
Contact:  Website

Tue Nov 13, 2007 5:08 pm

Hi,

This happens because of the way the upgrade process works:
- the old installation is removed (including the registry key)
- the new MSI is installed

There are two solutions for this:
1) Set the "Permanent" attribute for the registry component (in this case the registry key will not be uninstalled)
2) Set the "Do not register this component with Windows Installer" option for the registry component (this component will not be managed by Windows Installer, therefore it will not be removed).

You can read more about the attributes of the components here:
http://www.advancedinstaller.com/user-g ... rties.html

Regards,
Cosmin
Cosmin Pirvu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

jlbooth318
Posts: 1
Joined: Thu Nov 03, 2005 5:00 pm

Issue with 'Never Overwrite' when upgrading

Wed Nov 14, 2007 3:19 pm

It seems that the logic and/or action is wrong for the "Never Overwrite" option.

If an upgrade completely removes the old installation and the newinstallation includes the same registry keys, we have found that the new keys that are set to "Never Overwrite" are not found following an upgrade. It should not overwrite if the keys already exist. If they don't exist, then the installer should put them in.

Basically what you end up with after an upgrade is a partial or incomplete installation if Never Overwrite is checked on registry keys. Not a good thing at all!

Cosmin
Posts: 5797
Joined: Tue Jul 10, 2007 6:39 pm
Contact:  Website

Wed Nov 14, 2007 4:42 pm

Hi,

This happens because the upgraded MSI sees the "Never Overwrite" attribute for the registry key, therefore it will not install it. Since the old MSI uninstalls the registry value and the new MSI will not install it, this value will not be in the registry after the upgrade.

Note that the "Never Overwrite" attribute is used to prevent the repair of a component. You can read more about this here:
http://www.advancedinstaller.com/user-g ... -file.html

The solution in your case is to set both "Permanent" and "Never Overwrite" attributes for the component.

We will try to improve the documentation for the attributes of a component in order to make it more clearer.

Regards,
Cosmin
Cosmin Pirvu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”