How to: Upgrade Visual C++ Projects to Visual Studio 2012

If you have a Visual C++ project that was created with an earlier version of Visual Studio, Visual Studio 2012 might prompt you to update that project the first time you open it. If your project uses an earlier version of the Visual C++ compiler and libraries, a message will ask whether you want to upgrade to the most recent version of the build tools. Your options for upgrading depend on which version of Visual Studio was used to create the project.

If you do not see the prompt to update the project, you may not have to do anything to upgrade the project. See Visual Studio 2012 Compatibility for details.

  • If the project (.vcproj) was created in a version of Visual Studio that's older than Visual Studio 2010, you must update the project to Visual Studio 2012.

  • If the project (.vcxpoj) was created in Visual Studio 2010, you have two options:

    • You can skip the update. Visual Studio 2012 will load and work with the project without making any changes if it has access to the Visual C++ tools in Visual Studio 2010 with SP1. You can provide this access most easily by installing Visual Studio 2010 and Visual Studio 2012 on the same machine. For more information, see Installing Visual Studio Versions Side-by-Side.

    • You can update the project by allowing Visual Studio to make the changes that are described later in this topic. If you have more than one Visual C++ project in your solution, you must update none or all of them.


      If you decline the update when first prompted, you can update the project later by opening the Project menu and choosing Update VC++ project.

Upgrading a Visual C++ Project

If you allow Visual Studio 2012 to automatically update the toolset in your project, Visual Studio will make the following changes:

  • Change the project to use the compiler and libraries for Visual Studio 2012 (PlatformToolset = VisualStudio 11).

  • Change TargetFrameworkVersion to .NET Framework 4.5 for C++ CLI projects.

For more information, see “Project Compatibility = No Upgrade (Yay!)” in the following blog post: First Look at the New C++ IDE Productivity Features in Visual Studio 11 (Cont’d…).

Continuing to Work with a Custom PlatformToolset

If you want to continue to work with a custom PlatformToolset in Visual Studio 2012, the custom PlatformToolset must be located under %ProgramFiles%\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets (for an x86 machine) or %ProgramFiles (x86)%\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets (for an x64 machine). For information about how to create a custom platformtoolset, see C++ Native Multi-Targeting.

See Also


Visual Studio 2012 Compatibility