Search code examples
windowsmsvcrtvisual-c++

Do I still need to install Microsoft VC++ 2015 runtime redistributable if I already have Microsoft VC++ 2017 runtime installed?


From what I read about these posting and elsewhere, regarding the issue of why I cannot install Microsoft VC++ 2015 runtime redistributable if I already have Microsoft VC++ 2017 runtime installed.

The reason for this "cannot install" is because once you have Microsoft VC++ 2017 installed, there is no need to install 2015 version,as 2017 subsume 2015. Am I right?

Secondly, and more crucially, from now onwards if I have a higher version of Microsoft VC++ installed, I can safely skip the lower version, this is going to be Microsoft strategy: going forward there is only one version of Microsoft VC++ ( the latest one). Am I right? I remember I read this elsewhere, but not sure my understanding is correct or not, and now I couldn't find the blog post. So I hope that I can get some confirmation here.


Solution

  • The VC++ runtime redistributables are the same for VS 2015, 2017 and 2019! From Microsoft Support:

    Note Visual C++ 2015, 2017 and 2019 all share the same redistributable files.

    However, there have been many different versions of this redistributable package released! The installer programs (linked below) will do the required checks, to see if a more recent version is already present on the target computer, and signal if so.

    The runtime libraries that comprise this redistributable package are sometimes (confusingly) referred to as Visual C++ "14" Runtime Libraries. (The "14" comes from the fact the Visual Studio 2015 includes version 14 of the MSVC compiler; VS2017 = MSVC v15; and VS2019 = MSVC v16.)

    Whether or not future versions of Visual C++ will also share the same redistributable package is not certain.

    The latest versions, for the three supported processor platforms, can be downloaded and/or installed from the following links:

    EDIT: There may be some confusion, here, over the 'version check' I mentioned above! From the same Microsoft Support page:

    For example, installing the Visual C++ 2019 redistributable will affect programs built with Visual C++ 2015 and 2017 also. However, installing the Visual C++ 2015 redistributable will not replace the newer versions of the files installed by the Visual C++ 2017 and 2019 redistributables.

    This is different from all previous Visual C++ versions, as they each had their own distinct runtime files, not shared with other versions.

    I interpret this as meaning that, if you have an 'older' version of the vc_redist installation (released, say, with VS2015), it's components will be updated by any newer installation. However, running an older installer will not conflict with a more recent installation.