I always find it difficult to find which is which.
What is the correspondance between Visual Studio "year version" (e.g. 2010), version (11.0), path name in C:\Program Files (x86)\...
, SDK version, etc. ?
Here is a list:
Name "Year" name MSVC Toolset
-------------------------------------------------------------------------------
Visual Studio 9.0 (i) Visual Studio 2008
Visual Studio 10.0 Visual Studio 2010 (ii)
Visual Studio 11.0 Visual Studio 2012
Visual Studio 12.0 (iii) Visual Studio 2013
Visual Studio 14.0 Visual Studio 2015 v140
Visual Studio 15.0 (iv) Visual Studio 2017 v141
Visual Studio 16.0 (iv) Visual Studio 2019 v142
Visual Studio 17.0 Visual Studio 2022 v143
(i) This version is useful to compile Python packages. Packaged as Microsoft Visual C++ Compiler for Python 2.7.
(ii) 64-bit version non included in the Express version. See more info here about 64-bit for MS VS 10 Express.
(iii) Here is the download link for Visual Studio Express 2013 for Windows Desktop with Update 5
(iv) For previous versions, the "platform toolset" was named with the version number, for example v140
for 2015. For 2017 and 2019 it's slightly different, it's not v150
but v141
. It's not v160
but v142
. You can see this in .vcxproj files: <PlatformToolset>v142</PlatformToolset>
.