I have an application that uses the ms vc++ runtime. How should I install it on the end-user’s system if it is not present? I was thinking of bundling it with the installer… but how would I do that as far as what to include? Is there some silent installer? If so, where can it be found? I can’t seem to find it in the Windows SDK.
Share
There is an interesting post about deploying the runtime libraries on the Visual C++ blog. The post is about VC8 so I’m not sure all the recommendations apply to VC9.
Here are your options according to Microsoft:
libraries you’re using. These MSM
files install the libraries globally.
They also keep a reference count so
that the libraries are removed when
the last application using them gets
uninstalled.
deployment i.e. copy the
libraries and manifest files in your
application directory. This is a simpler
solution if you don’t use an .msi
installer. Your app should still use the
system version of the libraries if they are more
up-to-date than your own.
Another option Microsoft discourage you from using is running the Visual C++ redist installer from your own installer.
I’m not sure what their reasons are. It will take a few extra megabytes and will not be reference counted but it still works very well AFAICT. You can pass the /q option to vc_redist_x86.exe to perform an unattended install (no user interaction).