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
- :
- Re: DoInstall Doesn't Wait
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
‎Apr 03, 2009
01:43 PM
DoInstall Doesn't Wait
In an Installscript install, I launch another install that installs the prerequistes for our product. I use the following syntax:
DoInstall(SRCDIR^"eMgrPrq\\Disk1\\setup.exe", "sql", LAAW_OPTION_WAIT);
I also used:
DoInstall(SRCDIR^"eMgrPrq\\Disk1\\setup.inx", "sql", LAAW_OPTION_WAIT);
The script works fine if I copy the installation files to the hard dirve and run the install from the hard drive. The main install waits for the prerequisite install to finish.
If I run the install from the CD, the main install does not wait after kicking off the prerequisite install. It starts the prerequisite install and then continues with the main install.
Anyone else encountered this?
DoInstall(SRCDIR^"eMgrPrq\\Disk1\\setup.exe", "sql", LAAW_OPTION_WAIT);
I also used:
DoInstall(SRCDIR^"eMgrPrq\\Disk1\\setup.inx", "sql", LAAW_OPTION_WAIT);
The script works fine if I copy the installation files to the hard dirve and run the install from the hard drive. The main install waits for the prerequisite install to finish.
If I run the install from the CD, the main install does not wait after kicking off the prerequisite install. It starts the prerequisite install and then continues with the main install.
Anyone else encountered this?
(5) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 03, 2009
05:54 PM
When the installation is run from any removable media, such as a CD-ROM, the Setup.exe file on Disk1 may not be available during the entire installation. (If Setup.exe becomes unavailable while it is running, the operating system sometimes displays a prompt to request that the end user insert the correct disk, and this may cause the installation to fail.) Therefore, to avoid this problem, the Setup.exe file is copied to a Temp folder, and the installation is relaunched from there. The original Setup.exe then terminates. However, when this happens, DoInstall behaves as if the installation has completed, and it does not wait.
You might want to try using the /clone_wait parameter when you are launching the child installation; if you do this, the launched installation keeps the original launched process running, and the parent installation then waits. Note, however, that this may cause problems if the original CD containing Setup.exe is not available throughout the entire installation. This includes multiple-CD installations, where the first CD is not available during some parts of the installation.
You might want to try using the /clone_wait parameter when you are launching the child installation; if you do this, the launched installation keeps the original launched process running, and the parent installation then waits. Note, however, that this may cause problems if the original CD containing Setup.exe is not available throughout the entire installation. This includes multiple-CD installations, where the first CD is not available during some parts of the installation.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 06, 2009
07:20 AM
Thanks for your reply. First, I have never had this issue in either IS 6.3 or IS 11, so it would seem that something has changed in IS 2009.
Second, how long does it take the original Setup.exe to be copied to the temp folder and be relaunched? I do not kick off the second install until after the end user has responded to some messages. It would seem that by then the original install would have ended and the one in the temp folder would be running.
Third, I shared the CD-Rom drive of another machine on the network and ran the install from there. The install worked fine. I would have thought that with all the issues of network traffic, there would have been problems. There weren't.
The test machine that I use is ghosted with the same image each time I test, so it is always starting off in the same condition. The problem appears when it is run from a CD-Rom drive attached directly to the machine, either internally or via USB.
I will look into the work around you suggest, plus I am also working on copying the prerequisite install to the hard drive if the setup is being run from a CD-Rom drive.
I cannot believe that this is normal behavior. As I said before, I have not had an issue in 6.3 or 11, which would lead me to believe this is a bug in 2009. In fact the install that I am working on was an upgrade from an IS 11 install.
Second, how long does it take the original Setup.exe to be copied to the temp folder and be relaunched? I do not kick off the second install until after the end user has responded to some messages. It would seem that by then the original install would have ended and the one in the temp folder would be running.
Third, I shared the CD-Rom drive of another machine on the network and ran the install from there. The install worked fine. I would have thought that with all the issues of network traffic, there would have been problems. There weren't.
The test machine that I use is ghosted with the same image each time I test, so it is always starting off in the same condition. The problem appears when it is run from a CD-Rom drive attached directly to the machine, either internally or via USB.
I will look into the work around you suggest, plus I am also working on copying the prerequisite install to the hard drive if the setup is being run from a CD-Rom drive.
I cannot believe that this is normal behavior. As I said before, I have not had an issue in 6.3 or 11, which would lead me to believe this is a bug in 2009. In fact the install that I am working on was an upgrade from an IS 11 install.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 06, 2009
08:23 AM
The DoInstall function was changed in InstallShield 12. Here's a link to a help topic that describes that change (plus other changes):
http://helpnet.acresso.com/Robo/BIN/Robo.dll?tpc=/robo/projects/installshield15helplib/UpgradingISMSI.htm
You may want to scan the "Upgrading Projects from Earlier InstallShield Versions" section of the help. This section is where we describe possible changes in behavior that you may notice between new InstallShield projects and projects that are upgraded from older versions of InstallShield to the latest version.
http://helpnet.acresso.com/Robo/BIN/Robo.dll?tpc=/robo/projects/installshield15helplib/UpgradingISMSI.htm
You may want to scan the "Upgrading Projects from Earlier InstallShield Versions" section of the help. This section is where we describe possible changes in behavior that you may notice between new InstallShield projects and projects that are upgraded from older versions of InstallShield to the latest version.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 06, 2009
11:00 AM
Debbie
Thanks for the tip about the /clone_wait parameter. It appears to have solved the problem.
But I do have a question as to why this was not in the IS 2009 help files for DoInstall. If I was not upgrading from another version, I wouldn't be checking the help on upgrading from prior versions.
Also your help file on DoInstall states this about the szCmdLine parameter:
"Specifies the command line for the launched installation. You can specify any valid startup InstallShield command line for this parameter. Note that DoInstall automatically adds some command-line switches, depending on the nOptions specified. "
If I specify the LAAW_OPTION_WAIT option in nOptions, why wouldn't the /clone_wait option automatically be added?
At the very least, update the help for DoInstall to include the /clone_wait option if one specifies LAAW_OPTION_WAIT in the nOptions parameter.
Thanks for the tip about the /clone_wait parameter. It appears to have solved the problem.
But I do have a question as to why this was not in the IS 2009 help files for DoInstall. If I was not upgrading from another version, I wouldn't be checking the help on upgrading from prior versions.
Also your help file on DoInstall states this about the szCmdLine parameter:
"Specifies the command line for the launched installation. You can specify any valid startup InstallShield command line for this parameter. Note that DoInstall automatically adds some command-line switches, depending on the nOptions specified. "
If I specify the LAAW_OPTION_WAIT option in nOptions, why wouldn't the /clone_wait option automatically be added?
At the very least, update the help for DoInstall to include the /clone_wait option if one specifies LAAW_OPTION_WAIT in the nOptions parameter.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 06, 2009
03:18 PM
I'm glad that using /clone_wait resolved the issue. Sorry about the documentation; you're right. The DoInstall help topic definitely needs to be updated. This documentation issue is logged as IOC-000054833. Thanks for the feedback.