InstallShield include prerequisite in media or download from web

In the redistributables panel, when I check the properties of a prerequisite, there is an option of build location, Copy from source media, download from web, or extract from setup.exe.

Is there a way to create a single project which would create 2 types of installer? If it is distributed through a cd, then include the prerequisite files/installers. And create another installer which will not include the prerequisite files, but instead automatically download from web when not yet installed on target machine.

And what is extract from setup.exe?
LVL 22
Who is Participating?
jmcmunnConnect With a Mentor Commented:

There is absolutely a way to do this, we do it here with SQL server.  You can do it with release flags if there are two different prerequisites you wish to include based on your target media (wb vs CD).

You need to be running at least Installshield 2009 to do this I believe.  Once you do that, you can set a release flag on the prerequisite which tells it what release(s) to include it in.  Depending on the prerequisite you are using there may already be two different prerequisites (one will be called "download from web" or something similar).

If there is only one prerequisite you *should* be able to associate the prerequisite with a specific Feature of your install and then put the release flag on the feature instead of the prerequisite.  The end result should be similar...

Either way, using release flags will be necessary to do this if you want to have one installshield project.

Vadim RappCommented:
You can experiment with multiple Releases, hoping that Release would involve the prerequisite as well, but I wouldn't hold my breath.

> And what is extract from setup.exe?
If you press F1 on those Properties, it will bring up Help article with the explanation, which I copied here for you.

Download From The Web—Downloads all of the setup prerequisite files included in your project (if necessary) from the URL specified in the setup prerequisite (.prq) file for each prerequisite.

Extract From Setup.exe—Compress the setup prerequisite files into Setup.exe, to be extracted at run time, if necessary.

Copy From Source Media—Store the setup prerequisite files at the root directory of the source media.

ThomasianAuthor Commented:
>>You can experiment with multiple Releases, hoping that Release would involve the prerequisite as well, but I wouldn't hold my breath.

So if that didn't work, I would have create one project for each release?
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

Vadim RappConnect With a Mentor Commented:
Yes. I understand, the prerequisite is customized sql server, but if it was something non-customized, like .net framework, then one more option would be to tell the user to download it by themselves. The main benefit of that is that you don't assume that you support the framework (or whatever) as well (since you installed it).
ThomasianAuthor Commented:
>>The main benefit of that is that you don't assume that you support the framework (or whatever) as well (since you installed it).
Can you elaborate on this?
In response to answer 34967160 above and your reply 34967445....

What he's saying is that if you install a third party application on someone's machine they may start asking you to support it.  However this has not been my experience as long as the install is done properly.  It is a valid point in the sense that the less responsibility you take, the less you will get called to help.  But I find it incredibly annoying (to the point of not using software on occasion) if an application refuses to install until I manually complete the requirements it needs.

Also, what do you think Microsoft is going to say if your customer DOES indeed call them and say "I installed SQL server so I could run <SOME COOL PIECE OF SOFTWARE> and now that software is not working..."  Microsoft is going to tell them to call you, and you are going to end up troubleshooting the SQL issue anyway, regardless of where the issue lies.

So, I'd much rather take full control of the third party install and just make sure it gets done correctly.
Vadim RappCommented:
Right, as I said, it probably does not apply to customized sql server for a particular application. But this question is about prerequisites in general, and recently we saw here exactly such a question where developer had to remotely troubleshoot failing upgrade of .Net framework that his application has installed. Even with sql server, I believe, if the problem comes up during upgrading it or (more realistically) uninstalling it, the caller may not even mention the cool piece of software it was for.

Thanks for finding the release-related bit of the prerequisite - I checked if something like that exists, but did it in an older version of Installshield.
ThomasianAuthor Commented:
Thanks, that's exactly what I needed.

I also like the idea of letting the users separately install prerequisites to let them know that we do not support it. Though it doesn't apply for my current project, I will keep that into mind for my future projects.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.