cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
209software
Level 3

Install or Replace

I am still having trouble getting installshield to replace my app with the newer version. The users are having to uninstall the old version first.

Here's what I want...

- The installer should install normally if the program is not there.
- The installer should upgrade the software if it's a newer version.
- The installer should warn and make the user confirm if this it a downgrade from the currently installed version

THIS SHOULD BE THE OUT-OF-THE-BOX default settings for InstallShield builds FOREVER. This whole "You already have a version of this installed" should never occur, or if the developer asks for it, there should be an "Are you NUTS?" dialog box to confirm it.
Labels (1)
0 Kudos
(1) Reply
Cary_R
Level 11

209software wrote:
I am still having trouble getting installshield to replace my app with the newer version. The users are having to uninstall the old version first.

Here's what I want...

- The installer should install normally if the program is not there.
- The installer should upgrade the software if it's a newer version.
- The installer should warn and make the user confirm if this it a downgrade from the currently installed version

THIS SHOULD BE THE OUT-OF-THE-BOX default settings for InstallShield builds FOREVER. This whole "You already have a version of this installed" should never occur, or if the developer asks for it, there should be an "Are you NUTS?" dialog box to confirm it.


So perhaps a discussion on why this error takes place will be helpful. (Short answer: It's the design of the Windows Installer engine, which InstallShield is constrained by)

When you rebuild your install using the same ProductCode, the MSI engine sees that a copy of the MSI with the same product code is already installed. To install it as an upgrade it requires certain command line parameters to be passed (but only if it is already installed). There's some other requirements, but broadly, that's how the installer engine works.

You shouldn't see this message if you're building with a setup.exe file. InstallShield tries to simplify this case by embedding logic into the *.exe file and passing those conditional parameters for you. The other option is add an upgrade path (which has other requirements).
0 Kudos