We have an application that will have many (100+) optional add-on packages (all passive content). Any combination of add-ons can be installed/uninstalled and each can be upgraded.
I'm currently installing each as TYPE=SA with a dependency for the main application. This requires that the user know and/or remember where they installed the original app and then install the add-on to the same memory location. I'd like to make drive selection automatic, but can't find a way to do it. Any suggestions? (What I'd really like to do is programmatically set the value of ! in the PKG file.)
Here's what I've tried and how it's failed:
- - -
TYPE=SP
>>>Changes main app version number causing problem with subsequent add-ons installs and removals
- - -
IF exists("c:\system\apps\myapp")
...install to c:
ELSEIF exists("e:...")
...install to e:
ELSE
...show error and exit
ENDIF
>>>SIS ends up with two copies of all files. Neither TEXTEXIT nor TEXTABORT force the install to cancel.
- - -
IF exists("!:\system\apps\myapp")
...install to !:
ELSE
...show error and exit
ENDIF
>>> exists("!:\...") always evals as false. Same problem with TEXTEXIT and TEXTABORT
- - -
TEXTFILE: tell user to install to same dir
install to !:\
>>> TEXTFILE displayed after install device dialog
- - -




