This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Installscript bootstrapper getting into a broken state (or breaking Windows)
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 14, 2010
12:48 PM
Installscript bootstrapper getting into a broken state (or breaking Windows)
I have a fairly new installation flow which involves a 32-bit Installscript bootstrapper which detects 32/64-bit and then calls the corresponding "main" installer package. The bootstrapper is designed to fail out with an abort statement after the call so that it doesn't register as an installed product itself. If it's relevant, the main installer packages are Installscript-MSI.
The install works great, and if a user uninstalls via Add/Remove programs, all is well (it just calls the main installer's setup.exe directly). The problem occurs when users choose to run the original bootstrapper again to perform an uninstall. I have some installscript code to detect the presence of PROGRAMFILES^"InstallShield Installation Information"^{GUID for the 32 or 64-bit main package}^setup.exe. If detected, the bootstrapper knows it is being used for uninstall, so it calls that exe to initiate maintenance of the main installer, then fails out with an abort statement.
I've tried this both with wait and no wait on the LaunchAppAndWait call to the other setup.exe, and either way the uninstall seems to proceed fine, but somewhere in this process the installscript bootstrapper becomes unusable again on that machine. Any further attempts to launch the bootstrapper result in the following error:
Error reading setup initialization file
I checked the temp folders and some were created, but were empty -- setup.inx and other familiar IS support files were nowhere to be found.
I'm looking for advice not only for designing around this problem, but for fixing an existing machine which was affected by it.
Thank you.
The install works great, and if a user uninstalls via Add/Remove programs, all is well (it just calls the main installer's setup.exe directly). The problem occurs when users choose to run the original bootstrapper again to perform an uninstall. I have some installscript code to detect the presence of PROGRAMFILES^"InstallShield Installation Information"^{GUID for the 32 or 64-bit main package}^setup.exe. If detected, the bootstrapper knows it is being used for uninstall, so it calls that exe to initiate maintenance of the main installer, then fails out with an abort statement.
I've tried this both with wait and no wait on the LaunchAppAndWait call to the other setup.exe, and either way the uninstall seems to proceed fine, but somewhere in this process the installscript bootstrapper becomes unusable again on that machine. Any further attempts to launch the bootstrapper result in the following error:
Error reading setup initialization file
I checked the temp folders and some were created, but were empty -- setup.inx and other familiar IS support files were nowhere to be found.
I'm looking for advice not only for designing around this problem, but for fixing an existing machine which was affected by it.
Thank you.
(2) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 14, 2010
01:19 PM
update: By directly re-installing the main installscript-MSI on a machine that was in this weird state, then uninstalling via add/remove programs, the bootstrapper then works again. So, the machine can be "unbroken", and perhaps this gives some additional clue as to what is happening?
I would still appreciate advice on a better way to handle the use of the bootstrapper as uninstaller in order to completely avoid this problem.
I would still appreciate advice on a better way to handle the use of the bootstrapper as uninstaller in order to completely avoid this problem.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 14, 2010
04:44 PM
I believe I have this resolved. I'll post what I did in case anyone encounters the same behavior and finds this thread.
In Installshield's uninstall key, there were some command line arguments to the setup.exe:
-runfromtemp -l0x0409 -removeonly
I had not previous included these when I called the uninstaller from my bootstrapper. I dropped the language arg, but used the other two (I suspect the "runfromtemp" is the one which was key to resolving my issue). The bootstrapper no longer got into a broken state once I added these args.
In Installshield's uninstall key, there were some command line arguments to the setup.exe:
-runfromtemp -l0x0409 -removeonly
I had not previous included these when I called the uninstaller from my bootstrapper. I dropped the language arg, but used the other two (I suspect the "runfromtemp" is the one which was key to resolving my issue). The bootstrapper no longer got into a broken state once I added these args.