Logo
INFO: Visual Studio version numbers.

Author: Carlos J. Quintero (Microsoft MVP) Applies to: Microsoft Visual Studio .NET 2002
Date: August 2011   Microsoft Visual Studio .NET 2003
Updated: March 2013   Microsoft Visual Studio 2005
      Microsoft Visual Studio 2008
      Microsoft Visual Studio 2010
      Microsoft Visual Studio 2012
Introduction

At the time of this writing, there have been the following versions of Visual Studio (commercial names):

  • Visual Studio .NET (2002)
  • Visual Studio .NET 2003
  • Visual Studio 2005
  • Visual Studio 2008
  • Visual Studio 2010
  • Visual Studio 2012

When programming extensions (add-ins, packages, etc.) for Visual Studio, it is necessary very often to know several internal version numbers that those Visual Studio versions use.

More Information

Each Visual Studio version uses different internal version numbers related to the following subjects:

  • Visual Studio ProgId

    If you want to automate Visual Studio from an external application or script, you can do it using COM Automation. To create the root EnvDTE.DTE object instance, you need to pass the Visual Studio ProgId to the CreateObject function of most COM-aware languages. See the article: HOWTO: Automating Visual Studio .NET from outside the IDE.

    The ProgId for each Visual Studio version is the following:

    Visual Studio version ProgId
    Visual Studio .NET 2002 VisualStudio.DTE.7
    Visual Studio .NET 2003 VisualStudio.DTE.7.1
    Visual Studio 2005 VisualStudio.DTE.8.0
    Visual Studio 2008 VisualStudio.DTE.9.0
    Visual Studio 2010 VisualStudio.DTE.10.0
    Visual Studio 2012 VisualStudio.DTE.11.0

  • Visual Studio solution format

    The format used by the solution files (.sln) is different for each Visual Studio version:

    Visual Studio version Solution format
    Visual Studio .NET 2002 7.00
    Visual Studio .NET 2003 8.00
    Visual Studio 2005 9.00
    Visual Studio 2008 10.00
    Visual Studio 2010 11.00
    Visual Studio 2012 12.00

  • Visual Studio registry keys

    Visual Studio uses the Windows Registry to store settings for all users (HKEY_LOCAL_MACHINE) or for the current user (HKEY_CURRENT_USER). The registry key used for each Visual Studio version is the following:

    Visual Studio version Registry key
    Visual Studio .NET 2002 Software\Microsoft\VisualStudio\7.0
    Visual Studio .NET 2003 Software\Microsoft\VisualStudio\7.1
    Visual Studio 2005 Software\Microsoft\VisualStudio\8.0
    Visual Studio 2008 Software\Microsoft\VisualStudio\9.0
    Visual Studio 2010 Software\Microsoft\VisualStudio\10.0
    Visual Studio 2012 Software\Microsoft\VisualStudio\11.0

  • DTE version

    Given an EnvDTE.DTE instance, you can get its version using the DTE.Version property. The value returned for each Visual Studio version is the following:

    Visual Studio version DTE.Version
    Visual Studio .NET 2002 7.00
    Visual Studio .NET 2003 7.10
    Visual Studio 2005 8.0
    Visual Studio 2008 9.0
    Visual Studio 2010 10.0
    Visual Studio 2012 11.0

  • Visual Studio installation folder

    If you want to build solutions from the command-line you need the full path to the Visual Studio application (devenv.exe). You can get the actual installation folder of each Visual Studio version reading the following registry key and value:

    Visual Studio version Registry key Value Default result for Windows 32-bit English (*)
    Visual Studio .NET 2002 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\7.0 InstallDir C:\Program Files\Microsoft Visual Studio .NET\Common7\IDE\
    Visual Studio .NET 2003 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\7.1 InstallDir C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\
    Visual Studio 2005 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\8.0 InstallDir C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\
    Visual Studio 2008 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0 InstallDir C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\
    Visual Studio 2010 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\10.0 InstallDir C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\
    Visual Studio 2012 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\11.0 InstallDir C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\

    (*) The folder "Program Files" is localized in other languages and for Windows 64-bit English is "Program Files (x86)"

  • .NET Framework 32-bit folder

    You can get the actual root installation folder of the .NET Framework 32-bit from a 32-bit process reading the registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework" (*), "InstallRoot" value, which by default returns the result "C:\Windows\Microsoft.NET\Framework".

    The subfolder for each .NET Framework version is the following:

    .NET Framework version Subfolder
    1.0 v1.0.3705
    1.1 v1.1.4322
    2.0 v2.0.50727
    3.0 v3.0
    3.5 v3.5
    4 v4.0.30319
    4.5 v4.0.30319 (version 4.5 is an "in-place" upgrade of version 4)

    (*) On Windows 64-bit the actual registry key (using regedit.exe) is "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\" rather than "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\" but 32-bit processes are redirected automatically to that actual registry key.

  • .NET Framework 64-bit folder

    You can get the actual root installation folder of the .NET Framework 64-bit from a 64-bit process reading the registry key "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework", "InstallRoot" value, which by default returns the result "C:\Windows\Microsoft.NET\Framework64".

    The subfolder for each .NET Framework version is the following:

    .NET Framework version Subfolder
    2.0 v2.0.50727
    3.0 v3.0
    3.5 v3.5
    4 v4.0.30319
    4.5 v4.0.30319 (version 4.5 is an "in-place" upgrade of version 4)

  • .NET Framework 32-bit SDK installation folder

    You can get the actual installation folder of each .NET Framework 32-bit SDK version from a 32-bit process reading the following registry key and value:

    .NET Framework SDK version Registry key (*) Value Default result for Windows 32-bit English (**)
    1.0 HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework sdkInstallRoot C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\
    1.1 HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework sdkInstallRootv1.1 C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\
    2.0 HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework sdkInstallRootv2.0 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\
    2.0, 3.0, 3.5 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK-NetFx35Tools-x86 InstallationFolder C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\
    4 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK-NetFx40Tools-x86 InstallationFolder C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\
    4.5 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-x86 InstallationFolder C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\

    (*) On Windows 64-bit the actual registry key (using regedit.exe) is "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\" rather than "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\" but 32-bit processes are redirected automatically to that actual registry key.
    (**) This folder is localized in other languages and for Windows 64-bit English is "C:\Program Files (x86)"

  • .NET Framework 64-bit SDK installation folder

    You can get the actual installation folder of each .NET Framework 64-bit SDK version from a 64-bit process reading the following registry key and value:

    .NET Framework SDK version Registry key Value Default result for Windows 64-bit English (*)
    2.0, 3.0, 3.5 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK-NetFx35Tools-x64 InstallationFolder C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\
    4 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK-NetFx40Tools-x64 InstallationFolder C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\
    4.5 HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-x64 InstallationFolder C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\x64\

    (*) The folder "Program Files (x86)" is localized in other languages.

Related articles



Go to the 'Visual Studio Extensibility (VSX)' web site for more articles like this (Articles section)


Top