Why does an uninstall occur prior to a simple update?

For all your non-technical questions.
Steve
Posts: 117
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Why does an uninstall occur prior to a simple update?

Postby Steve » Sun Nov 12, 2006 11:46 pm

Hello,
I am noticing what seems to be strange behavior with how InstallAware updates an existing installation.

If I create an InstallAware setup and install it on a workstation, the installation runs and completes properly as expected.
If I now update a file or two in my setup, rebuild it and then run the rebuilt setup on the same workstation, InstallAware asks me if I want to uninstall the application. If I click No, the setup terminates. If I click Yes, the setup uninstalls my application. If I now run the setup again, it now installs the updated setup correctly.
(Note that my Product Code remains the same, while InstallAware automatically updates my Revision code)

If my Product code has not changed, why does InstallAware not just simply update my changed files without forcing an uninstall first?
The terms Product code and revision code lead one to believe that since the Product has not changed and only some files have been revised my application need only be revised not reinstalled from scratch!

To use perhaps a simpler analogy... if I want to change the colour of the paint in one room of my house I should not have to first tear down my house and rebuild it as a prerequisite to being permitted to repaint!

I'm sure this is probably standard msi behavior but it is not what I am used to seeing with either Wise or InstallShield. It certainly seems to be much more effort to resolve from a installation development point of view and I am hoping that you can help me understand this behavior and how to work around it. Perhaps there is just a simple setting that I have missed?

Thanks very much for your help!

Steve

CandiceJones
Posts: 904
Joined: Thu Dec 22, 2005 7:03 pm
Contact:

Postby CandiceJones » Mon Nov 13, 2006 9:28 am

Actually, InstallShield/Wise simply display an error and quit in this case, when InstallAware automatically uninstalls your old version for you, before installing the new version.

If you want to just update a couple of files, you want to use patches. This is simply the way Windows Installer is designed - there is no way to update "just" a few files in a package.

Alternately, of course, you could just make a new installer with just the effected files, and a new product code, and install that on top.
Candice Jones
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/

Steve
Posts: 117
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Postby Steve » Mon Jan 15, 2007 10:40 am

Hello Candice
You said:
Actually, InstallShield/Wise simply display an error and quit in this case...


Sorry to have to correct you, but this is simply not the case. In both IS and Wise, if your 'Update Code' (which is the equivalent of InstallAware's 'Product Code') remains unchanged between builds while the 'Product Code' (which is the equivalent of InstallAware's automatically updated 'Revision Code') is updated between builds, then existing application installations will be quickly and properly updated. They will not be uninstalled and then reinstalled.

Just so it is not overlooked, I feel it is very important to reiterate once again the critical and confusing terminology difference between IA/Wise and InstallAware:
Product Code (IS/Wise) = Revision Code (InstallAware)
Upgrade Code (IS/Wise) = Product Code (InstallAware)
Any IA/Wise user that upgrades to InstallAware and overlooks this confusing terminology difference is in for some confusing application upgrade results.

Candice you would be correct in stating that "InstallShield/Wise simply display an error and quit in this case" only when a setup author makes the mistake of assuming that the 'Product Code' refers to the same thing in IS/Wise vs. InstallAware.

So, again I would like to understand the following:
if my (InstallAware) Product Code has not changed, why does InstallAware not just simply update my changed files without forcing an uninstall first?

This is a very important question to me because, if I deem that my changes are too significant for the capabilities of a patch, and a client runs an updated complete setup instead, then the existing application installation will be uninstalled. This could be very dangerous because in uninstalling the application I could loose critical client information (at worst) or alternately, at best, could wipe out customised user application configuration settings.

Please help me to understand why this behavior exists. If I can understand why this behavior is the way it is, then I can design my setups accordingly and I and other IA users will not have to bother you in this again in the future.

Thanks in advance
Steve
[/u]
Last edited by Steve on Mon Jan 15, 2007 1:38 pm, edited 1 time in total.

Tinus
Posts: 207
Joined: Tue Jun 20, 2006 8:42 am
Location: Germany

Postby Tinus » Mon Jan 15, 2007 12:41 pm

Steve wrote:Sorry to have to correct you, but this is simply not the case. In both IS and Wise, if your 'Update Code' (which is the equivalent of InstallAware's 'Product Code') remains unchanged between builds while the 'Product Code' (which is the equivalent of InstallAware's automatically updated 'Revision Code') is updated between builds, then existing application installations will be quickly and properly updated. They will not be uninstalled and then reinstalled.


Steve, this is not true for InstallShield Express. If you have changed the ProductCode and kept the UpgradeCode the same and
- have an empty UpgradeTable you get a MessageBox that this version of the product is already installed
- have filled in the data of your previous version in the UpgradeTable, then ISX silently uninstalls the previous version and then installs the new version.

The main difference is, that ISX is doing the uninstall/install sequence in the same installer dialog. InstallAware is doing the uninstall as a prerequisite and tells the user about this.

For small changes use a patch.

If you want to upgrade a previous installation done with IS/Wise have a look at my UpgradeCode plug-in here:
http://forums.installaware.com/viewtopic.php?t=1237
Martin Rothschink
InstallAware MVP

AxoNet Software GmbH
http://www.axonet.de/products/other-pro ... stallaware


Return to “Non-Technical”

Who is online

Users browsing this forum: No registered users and 23 guests