开发者

How to install VC redistributables in Advanced Installer?

There are many articles and posts about how to开发者_运维知识库 include VC runtimes in an MSI file.

I am using Advanced Installer and VS2008

Some say use Merge Modules; I am not sure they will work correctly ie. if they go in before my services (which depend on them) start up during the install, and also merge modules seme to have have an annoying habit of demanding a reboot on uninstall;

I have tried simply copying the .exe redistrutable packages from MS and using a custom-action under Install to execute them with the /q switch. I can run other installers like this (eg. SQLITE) and it works. But the MS files don't seem to become installed. They certainly don't show up in the Programs or Updates list.

Does anybody know a simple, effective way to incorporate the VC2008 runtimes into an MSI installation?


This is usually done through prerequisites. Currently Advanced Installer has predefined prerequisites for most Visual C++ redistributables. So all you need to do is add them to your project.


If you run the Visual C++ Redistributable as part of Advanced Installer Custom Action without the /q switch you will see it fails with error 'Another installation is currently in progress'.

I am experimenting with installing the pre-requisite first (before install phase of installer) or if that fails, I will use the Predefined Prerequisites (above). However, to have /q on the VCRedist when a Predefined Prerequisite requires an enterprise license, which I don't have ..

Update

Resolved as follows:

  1. Include the VCRedist in your installer
  2. Have a new Custom Action to 'Launch Installed File', choose the VCRedist from your installed files
  3. Use command line /install /q /norestart
  4. Drag the custom action last in the list after 'Finish Execution'

Your Custom Action dialog should look something like this

How to install VC redistributables in Advanced Installer?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜