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

maintenance mode

I have an installscript project. We'll call it CoolApp. There's two releases, 1.0 and 1.1.

CoolApp 1.1 gets installed on top of CoolApp 1.0. Add/Remove programs ends up having two entries: one for 1.0 and for 1.1.

The easy way is to directly edit the registry and delete the CoolApp 1.0 Uninstall key when performing the installation of CoolApp 1.1. This becomes a hassle once you get up to version 1.7. I'd rather not have to do this. However, the options that InstallShield offers for the Maintenance Mode are insufficient for what I'd like to do.

Essentially I want to use "multi-instance" and force IS to NOT generate a new product GUID, to instead use the same GUID that CoolApp 1.0 used, but, when the setup is run to display the installation wizard and not the uninstall.
Labels (1)
0 Kudos
(2) Replies
Kyle_Gibson
Level 3

So far the only way I've determined this is possible is as follows:

Maintenance mode: standard
Product GUID: {xxxxxx....}

onBegin -
if ProductGUID exists, copy to temp and delete original
spawn new process for setup.exe, don't wait
abort

onAbort
if productguid temp exists, rename temp to productguid
0 Kudos
WayneLum
Level 2

Which usually gets installed to the following location: "C:\Program Files\Macrovision\IS2008\SamplesPro\Cumulative Setup Sample Project"

------------------------------------------------
From the "Cumulative Setup Sample Project.doc"...
------------------------------------------------

Cumulative Setup Sample Project

Overview

This sample project shows how to customize the InstallShield runtime framework to perform a "InstallShield Professional 5.x style," or cumulative, setup. This means that every time the setup is run from the source location, it will go into First UI Mode (and never Maintenance UI), the same as setups built with InstallShield Professional 5.x and earlier would do. The only time Maintenance UI is displayed by the setup (i.e., the only time the option to uninstall the application is displayed to the user) is when the setup is launched from the Add/Remove Programs applet. This is accomplished by overwriting four InstallShield script events, which is detailed in the following section.
0 Kudos