Changes to Project Templates and Code Wizards in 15.3

Visual Studio 2017 Update 15.3 is a major release with many different improvements coming to the product. You can learn more about these changes in the 15.3 Release Notes. One aspect I want to highlight in this blog post pertains to changes made to the C++ templates in File > New Project and code wizards. We made these changes to account for feedback we received from you and to optimize the templates you use the most often.

Let’s start by looking at the New Project dialog in 15.2. Many of you will be familiar with the way everything is laid out. There are a number of different templates under Visual C++, including Win32, MFC (if you have that installed), and Test.

In 15.3, the dialog looks a bit different:

In order to make the templates more user-friendly and intuitive, we made the following changes:

  1. The Win32 category has been renamed to Windows Desktop, and continues to contain the Win32 project templates.
  2. The Win32 Console Application template has been renamed to Windows Console Application and no longer shows a wizard when creating a project.
  3. The Win32 Project template has been renamed to Windows Desktop Application and it no longer displays a wizard.
  4. If you do want to go through a wizard and configure your project from the get-go, you can choose the new Windows Desktop Wizard template:

    This will display a simple single-step wizard:

The wizard allows you to choose your application type (Windows or Console EXE, DLL, or LIB), reference ATL or MFC libraries, choose whether you want to use a precompiled header or export symbols, or simply set up an empty project with nothing in it.

Note: If you want an empty project with no additional options, such as a precompiled header, consider using the Empty Project template instead (found under the Visual C++ node and the General sub-node), which does exactly the same thing, but does not require you to go through a wizard.

C++ Add Class Changes

The new wizard isn’t the only one to get a rework. We went through a number of different project and code wizards and updated them with a more modern WPF-based user interface. The Add Class wizard (accessible from the right-click context menu in Solution Explorer) is a notable example. This would bring up a lot of complicated looking set of templates. As an example, if you click on the ATL tab alone, this is what you would get:

If you click on Visual C++ or its C++ sub-category however, the only option available there is C++ Class. And naturally, this is the option most people care about. So rather than make you go through this extra step just to add a simple, generic C++ class, Add > Class launches the Add Class Wizard directly.


If you want to access the other templates, simply do Add > New Item instead.

Several other wizards have been updated with a modern user interface.

Updated project wizards:

  1. Windows Desktop
  2. MFC DLL
  3. MFC ActiveX Control
  4. ATL Project
  5. Makefile Project

Updated code wizards:

  1. Add Class
  2. ATL Control
  3. ATL Simple Object

We’re interested in your feedback to learn what you think. Do you like these changes? Or should we do something else? Let us know in the comments below! In the meantime, be sure to check out Visual Studio 2017 Update 15.3 and check out the other announcements on the Visual Studio Blog and Visual C++ Blog!