| Author: |
Carlos J. Quintero (Microsoft MVP) |
Applies to: |
Microsoft Visual Studio .NET 2002 |
| Date: |
June 2008 |
|
Microsoft Visual Studio .NET 2003 |
| Updated: |
March 2009 |
|
Microsoft Visual Studio 2005 |
| |
|
|
Microsoft Visual Studio 2008 |
Introduction
This article provides a list of known project type Guids.
More Information
Every Visual Studio project has a project type (Windows project, Smart Device
project, Web Site project, etc.) and in some cases more than one type (subtypes
or
flavors).
Every project type is identified by a unique Guid, so every project has one or
more project type Guids.
Project type Guids are stored generally in the project file:
<PropertyGroup>
<ProjectTypeGuids>{A860303F-1F3F-4691-B57E-529FC101A107};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
...
</PropertyGroup>
But for some special projects (such as some database projects) and projects
lacking a file (such as Web Site projects), the project type is stored also in the
solution file:
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SqlServerProject1",
"SqlServerProject1.vbproj", "{BE5F0BE0-93CD-4FCE-A853-9096A442DF1B}"
EndProject
...
Note: Do not confuse the project type Guid with the project guid that
identifies a project within a solution.
The main project type of a project is returned by the automation model
through the EnvDTE.Project.Kind property, which is a string containing the Guid
that identifies the project type. To get all the project type Guids of a project
you have to read the project or solution file, or use the IVsAggregatableProject
interface as described in the article HOWTO:
Get the project flavor (subtype) of a Visual Studio project from an add-in.
The project type Guids are stored in the registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<version>\Projects where
<version> is:
- 7.0 for Visual Studio .NET 2002
- 7.1 for Visual Studio .NET 2003
- 8.0 for Visual Studio 2005
- 9.0 for Visual Studio 2008
However, not all the Guids stored in that registry key are actual project types.
Some of them are used only to provide project templates (for C# and VB.NET
projects) and others have other
purposes. The following table lists known project type Guids.
Note: The Guids
are provided all uppercase because the case in the registry doesn't always match the case
in the project file.