Default Project Templates in Visual Studio
When you create a new project, icons in the New Project dialog box and Add Project dialog box represent the available project types and their templates. Selecting an item from the Project types pane populates a list of project templates in the Templates pane. The project template you choose determines the output type and other options available for that project.
All project templates add the necessary files and references for the project type.
Templates by Category
The following tables list the default types of projects available in Visual Studio by category. Subcategories are indicated here in the format <Subcategory>/<TemplateName> where not otherwise specified. Some of the templates from various subcategories will also appear when the parent category is selected.
Note
Available templates may vary according to Visual Studio version, SKU, installation options, and other customizations. If you are missing a template that comes with your installation, run devenv.exe with the /installvstemplates switch. For more information, see How to: Restore Default Project Templates.
Visual Basic and C# Windows Templates
The following templates appear under the Visual Basic/Windows or Visual C#/Windows subcategories.
Project Template |
More Information |
---|---|
Class Library |
Use the Class Library template to quickly create reusable classes and components that can be shared with other projects. For more information about creating component classes, see Component Classes. |
Console Application |
Console applications are typically designed without a graphical user interface (GUI) and are compiled into an executable file. You interact with a console application by typing instructions at the command prompt. |
Empty Project |
The Empty Project template can be used when you want to create your own project type. The template creates the necessary file structure needed to store application information. Any references, files, or components must be added manually. For more information on adding references, see Adding and Removing References. |
Windows Forms Application |
This creates a traditional standalone Windows application or a rich front-end to a distributed Web application. For more information, see Creating Windows Applications or Creating a Windows Application Project. |
Windows Forms Control Library |
The Windows Control Library project template is used to create custom controls to use on Windows Forms. For more information, see Windows Forms Controls. |
Windows Service |
Windows Service Applications (formerly called "NT services") are long running applications that do not have a user interface. They can monitor items such as system performance. For more information, see Introduction to Windows Service Applications. |
WPF Application |
The WPF Application template creates a project that uses Windows Presentation Foundation. For more information, see How to: Create a New WPF Application Project. |
WPF User Control Library |
Creates a WPF User Control, which builds on the functionality of existing WPF controls. For more information, see How to: Create a WPF UserControl Library Project. |
WPF Browser Application |
Creates a WPF application that runs in the browser. This application model is named XAML Browser Application (XBAP). For more information, see How to: Create a New WPF Browser Application Project or Windows Presentation Foundation XAML Browser Applications Overview. |
WPF Custom Control Library |
Creates a project in which to build a custom WPF control. For more information, see Control Authoring Overview. |
Visual Basic and C# Web Templates
The following templates appear under the Visual Basic/Web or Visual C#/Web subcategories.
Project Template |
More Information |
---|---|
ASP.NET Web Application |
Creates an ASP.NET web application, which generates html in response to client requests. For more information, see Control Authoring Overview. |
ASP.NET Server Control |
Creates a server control to be used in ASP.NET web applications. See Walkthrough: Developing and Using a Custom Web Server Control. |
ASP.NET Web Service Application |
Web services communicate XML data between applications. See XML Web Services Using ASP.NET and How to: Create ASP.NET Web Service Projects. |
ASP.NET AJAX Server Control |
ASP.NET AJAX server controls consist of server and client code that integrate to produce rich client behavior. For more information, see ASP.NET AJAX Overview. |
ASP.NET AJAX Server Control Extender |
ASP.NET AJAX extender controls enhance the client capabilities of standard ASP.NET Web server controls. For more information, see ASP.NET AJAX Extender Controls Overview. |
WCF Service Application |
Windows Communication Foundation (WCF) is a unified framework for creating secure, reliable, transacted, and interoperable distributed applications. |
Dynamic Data Web Application |
Dynamic Data is a framework that renders UI based on a data model. See Walkthrough: Creating a New ASP.NET Dynamic Data Web Site Using Scaffolding. The Dynamic Data Web Application template is for applications that will use LINQ to connect to SQL. |
Dynamic Data Entities Web Application |
The Dynamic Data Entities Web Application is for applications that will use the ADO.NET Entity framework. |
Visual Basic and C# Office Templates
The following templates appear under the Visual Basic/Office or Visual C#/Office subcategories, and may be further sorted into Version2003 and Version2007.
Most of the Visual Studio templates for Office create either Add-ins, which add functionality to their host application, or templates to be consumed by the host application.
For more information about developing Add-ins and other extensions for Microsoft Office applications, see Programming Application-Level Add-Ins
Project Template |
More Information |
---|---|
Excel 2007 Add-in |
Creates an Add-in for Excel 2007. |
Excel 2007 Template |
Creates a template for Excel 2007. |
Excel 2007 Workbook |
Creates a workbook for Excel 2007. |
InfoPath 2007 Add-in |
Creates an Add-in for InfoPath 2007. |
InfoPath 2007 Form Template |
Creates a form template for InfoPath 2007. |
Outlook 2007 Add-in |
Creates an Add-in for Outlook 2007. |
PowerPoint 2007 Add-in |
Creates an Add-in for PowerPoint 2007. |
Project 2007 Add-in |
Creates an Add-in for Project 2007. |
SharePoint 2007 Sequential Workflow |
Workflow templates manage the life cycle of documents and list items in a SharePoint Web site. This template creates a sequential workflow. SharePoint Workflow Solutions. |
SharePoint 2007 State Machine Workflow |
This template creates a state machine workflow. SharePoint Workflow Solutions. |
Visio 2007 Add-in |
Creates an Add-in for Visio 2007. |
Word 2007 Add-in |
Creates an Add-in for Word 2007. |
Word 2007 Document |
Creates a document for Word 2007. |
Word 2007 Template |
Creates a template for Word 2007. |
Excel 2003 Add-in |
Creates an Add-in for Excel 2003. |
Excel 2003 Template |
Creates a template for Excel 2003. |
Excel 2003 Workbook |
Creates a workbook for Excel 2003. |
Outlook 2003 Add-in |
Creates an Add-in for Outlook 2003. |
PowerPoint 2003 Add-in |
Creates an Add-in for PowerPoint 2003. |
Project 2003 Add-in |
Creates an Add-in for Project 2003. |
Visio 2003 Add-in |
Creates an Add-in for Visio 2003. |
Word 2003 Add-in |
Creates an Add-in for Word 2003. |
Word 2003 Document |
Creates a document for Word 2003. |
Word 2003 Template |
Creates a template for Word 2003. |
Visual Basic and C# Workflow Templates
The following templates appear under the Visual Basic/Workflow or Visual C#/Workflow subcategories.
All of the templates in this section create projects that use Windows Workflow Foundation, except for those that specify SharePoint 2007. Windows Workflow Foundation enables model-driven workflow development, providing natural design visibility and hiding system-level concerns such as transactions, state management, and concurrency control.
For more information, see Windows Workflow Foundation Overview.
Project Template |
More Information |
---|---|
Sequential Workflow Library |
|
State Machine Workflow Library |
|
Workflow Activity Library |
|
Sequential Workflow Console Application |
See How to: Create Sequential Workflow Console Applications. |
State Machine Workflow Console Application |
See How to: Create State Machine Workflow Console Applications. |
Empty Workflow Project |
|
SharePoint 2007 Sequential Workflow |
|
SharePoint 2007 State Machine Workflow |
Other Visual Basic and C# Templates
The following templates appear under other subcategories of the Visual Basic and Visual C# nodes, as indicated.
Project Template |
More Information |
---|---|
Smart Device/Smart Device Project |
Creates a project to run on a Windows CE device, such as a Pocket PC or Smart Phone. For more information, see Smart Device Development. |
Database/SQL Server Project |
Creates a project in which to build stored procedures, user-defined functions, or other SQL entities. See How to: Create a SQL Server Project. |
Reporting/Reports Application |
Creates a report project to fill in manually or with the Report Wizard. See Repot Overview for more information. |
Reporting/Crystal Reports Application |
Creates a Crystal Reports reporting project. |
Test/Test Project |
Creates a test project. See Getting Started with Team System Testing Tools and How to: Create a Test Project. |
WCF/Sequential Workflow Service Library |
Creates a Sequential Workflow Service Library project using Windows Communication Foundation. For more information, see WCF Visual Studio Templates. |
WCF/Syndication Service Library |
|
WCF/State Machine Workflow Service Library |
|
WCF/WCF Service Library |
Visual C++ Windows Templates
Project Template |
More Information |
---|---|
Class Library |
|
Win32 Project |
|
Windows Forms Application |
|
CLR Console Application |
|
Win32 Console Application |
|
Custom Wizard |
|
Test Project |
|
ATL Project |
|
Makefile Project |
|
Empty Project |
|
CLR Empty Project |
|
Windows Forms Control Library |
|
Windows Service |
|
MFC Application |
|
MFC ActiveX Control |
|
MFC DLL |
|
MFC Smart Device ActiveX Control |
|
MFC Smart Device Application |
|
MFC Smart Device DLL |
|
ATL Smart Device Project |
|
Win32 Smart Device Project |
Other Project Types
These templates appear under the Other Project Types category. The projects in the Setup and Deployment section all use Windows Installer Deployment and are intended to be added to an existing solution.
Project Template |
More Information |
---|---|
Setup and Deployment/Setup Project |
|
Setup and Deployment/Web Setup Project |
|
Setup and Deployment/Merge Module Project |
|
Setup and Deployment/Setup Wizard |
See Setup Wizard. |
Setup and Deployment/CAB Project |
|
Setup and Deployment/Smart Device CAB Project |
|
Database/Database Project |
Database projects provide ways to programmatically interact with databases. For more information, see How to: Create Database and Server Projects. |
Extensibility/Visual Studio Add-in |
Visual Studio Add-ins add functionality to the Visual Studio and Visual Studio Macros environments. For more information, see How to: Create an Add-In. |
Extensibility/Shared Add-in |
Shared Add-ins can add functionality to one or more Microsoft Office applications, as well as to Visual Studio. For more information, see How to: Create an Add-In. |
Visual Studio Solutions/Blank Solution |
This creates a solution file and directory structure to add projects to. See Blank Solution Template. |
See Also
Concepts
File Types and File Extensions in Visual Basic and Visual C#
Reference
General, Projects and Solutions, Options Dialog Box