Sometimes after making some changes to a product, either updating assemblies or adding or removing assemblies, an installer fails to update a previous version. After running the installer, no errors or warnings are produced but the program files remain unchanged. If this happens the best solution I’ve found is to configure InstallShield to perform a major product upgrade.
To configure a major upgrade, you need to do the following in InstallShield:-
1. Configure an upgrade in the Upgrades node under the main Media node in the Installation Designer …
a. First, right-click on the Upgrade Windows Installer Setup node and add a new major upgrade. Make sure that the major upgrade setting Products Sharing my Upgrade Code is selected.
b. Click on the Upgrade Windows Installer Setup node and make sure the option to uninstall the old setup is selected.
2. Change the Product Code GUID via the Product Properties view under the main Installation Information/ General Information node. Note: DO NOT CHANGE the Upgrade Code – the installer will use this to automatically uninstall the previous version of the product.
3. In the Summary Information Stream view, update the Package Code GUID.
3. Then rebuild your installer and test it out. Your installation should now be upgraded properly.
Note that if the installer is intended to perform a major upgrade of a package with the same version number (as opposed to the more normal situation of a major upgrade of the same package with a lower version number), see this post for more info.