overlordchin
Level 6

upgrade from installscript to MSI

so we recently had this awful install script wrapper that packed in 2 other msi installers and called them to install them all.

I changed the solution into an msi that installs it all as a single product. I cannot get it to perform a major upgrade on the installscript product as I cannot find the UpgradeCode guid anywhere. It obviously has some mechanism under the hood to do its upgrades. Can I work this in somehow? I want it to completely uninstall the previous product before installing this one so I am open to alternatives though I would prefer an upgrade table entry if at all possible.

Custom action that does a silent command line uninstall? Other suggestions?
Labels (1)
0 Kudos
3 Replies
overlordchin
Level 6

If I try just calling the cached setup.exe and remove it that way it reboots upon removal. The software normally does not require a reboot on install or uninstall. So calling a command line removal is probably out
0 Kudos
ch_eng
Level 7

I am not sure a Major Upgrade is possible. When one of our projects changed from a plain InstallScript type to InstallScript MSI, I used InstallScript to accomplish the uninstall in the following manner. Flexera support indicated that a complete uninstall had to be performed before installing this new version due to the fact that the InstallShield project types changed.

SdShowMsg( "Uninstalling Product X", TRUE );
nvUninstallResult = UninstallApplication( "{PRODUCT_X_GUID}", " -clone_wait", WAIT );
SdShowMsg( "Uninstalling Product X", FALSE );
if ( nvUninstallResult < ISERR_SUCCESS ) then
MessageBox( "There was a problem running UninstallApplication:\n" + Err.Description, SEVERE );
abort;
endif;


I'm not sure how you would handle that in a Basic MSI project - I haven't had to work on that kind.

HTH

PS: that was done in InstallShield 2010 but may not make a difference.
0 Kudos
overlordchin
Level 6

Thanks for the reply. What I ended up doing based on your response and a few other things I read stating that no MSI upgrade info is created by an installscript installer I created an install condition that detects the old version and throws an error dialog up and exits the installer.
0 Kudos