Which Microsoft Visual C++ Runtime(s) Should I Include in My Installer?

Updated Feb 23, 2024

Reported In

Software

  • LabVIEW

Issue Details

I want to set up a Build Specification to build an installer in LabVIEW 2017 that shall include the LabVIEW Runtime. The Runtime's installer has three sub-options in the Additional Installers settings for "Installers to Include":
  • NI VC2008MSMs
  • NI VC2010MSMs
  • NI VC2015 Runtime
Their description is about the same in the description field. As I want to reduce the size of my build file, do I need to include all three?

Solution

The three installers in question are three different versions of the Microsoft Visual C++ Redistributable ("MSVC"). Many applications rely on it.

Especially hardware drivers, C++ and C# examples as well as third party software might rely on an older version of MSVC. If those old versions are still listed in your installer, you might want to install them, too. You can choose not to install them, but your application might not work. If you want to reduce footprint, try to add only the latest version of MSVC to your installer and test it on a Windows system with no previous installation.

For product versions 2024 and later, most software and drivers do only rely on MSVC version 2015 (or later), or packages relying on older MSVC versions can easily be uninstalled. You might consider updating LabVIEW to the latest version to resolve dependencies to older MSVC versions.

Additional Information

  • The version(s) of MSVC that are installed with a National Instruments software can be found in the readme file of that product.
  • Starting with MSVC version 2015 Microsoft adopted a backward compatible Runtime Engine approach similar to the one NI has done for LabVIEW. That means anything compiled for MSVC 2015 or later should be able to install and successfully use the latest version of the redistributable. All older redistributables are not backwards (or forward) compatible. If they are missing, a system will not work properly.
  • Below is a table of installer footprints with NI LabVIEW Runtime 2017 SP1 f1 and different configurations of the MSVC Runtime (note the zero added size of the 2015 version).
  • Currently, the LabVIEW Runtime 2017 SP1 requires MSVC2015. Therefore a newly created installer will install this version, even if deselected.
MSVC Runtime Version(s)
Size in MB*
NI VC2015 Runtime139
NI VC2010MSMs153
NI VC2008MSMs150
(none of them)139
2015+2010153
2015+2008150
2010+2008163
all three163

*: As compiled on a current English language installation of LabVIEW 2017 SP1 f1 on Windows 10 64bit.