Installshield Include redistributable with program

2019-09-15 16:34发布

Just got InstallShield Pro and I've created my setup singleimage executable.

I need to include the Visual C++ 2005 SP1 redistributable within the setup.

I've ticked the redistributable I want in the menu under 'Application Data'. I've right clicked it and changed the 'Build Location' to 'extract from setup.exe'.

However, when I build my setup, it has a folder called 'ISSetupPrerequisites' which has the VC++ redistributable in it.

Is there anyway I can incorporate this in to a single exe with my installer?

If I remove that folder it downloads the redistributable from the internet.

Thanks

3条回答
趁早两清
2楼-- · 2019-09-15 16:56

The 'Prerequisite' section of an InstallShield project includes modules which are external to the installation itself. What you need to do is use the 'Merge Modules' feature (under Application Data => Objects) and select the relevant ones to include by your installer.

Another option is to manually add the redistributable exe in your Support dir, and call it during installation using InstallScript, like this:

LaunchAppAndWait("cmd","/c start /wait \"" + SUPPORTDIR ^ "vcredist.exe" +
 "\" /q /norestart",LAAW_OPTION_WAIT | LAAW_OPTION_SHOW_HOURGLASS);

Note that if you're going to use this method in an InstallScript MSI project, you must call it during OnFirstUIBefore() or OnFirstUIAfter(), otherwise you will get an error regarding nested MSI installations.

查看更多
我只想做你的唯一
3楼-- · 2019-09-15 17:06

vc2013redist_installshield_free_version

I added a post build custom action aver the setup dialog success. Added vcredist_x86.exe to the install. And put /install as the command line - which is the only command line option that worked for me.

If I did it any other way the redist error-ed because two installs were going on.

查看更多
Anthone
4楼-- · 2019-09-15 17:08

Yes. You can include the contents of the ISSetupPrerequisites folder inside the exe by changing their location in the setup.exe tab of the Releases view. You can change this on a .prq by .prq basis by right clicking a prerequisite in the Redistributables view and selecting a location there.

查看更多
登录 后发表回答