In Visual Studio, projects are the containers that developers use to organize source code files and other resources that appear in Solution Explorer. Typically, projects are files, for example, a .csproj file for a Visual C# project, that store references to source code files and resources like bitmap files. Projects let you organize, build, debug, and deploy source code, references to Web services and databases, and other resources. VSPackages can extend the Visual Studio project system in three main ways: project types, project subtypes, and custom tools.
For an end-to-end sample of a language project system, see the Visual Studio IronPython Sample Deep Dive in the VSSDK Samples.
In This Section
- Project Types
Project types add support for new kinds of projects, such as programming languages. For example, each language that Visual Studio supports has its own project type, and the IronPython integration sample includes a project type for the IronPython language. You must create a project type for languages other than Visual C# and Visual Basic, to customize how items are built, debugged, deployed, and displayed in Solution Explorer. For more information, see Project Types and VSSDK Samples.
- Project Subtypes
Project subtypes are based on project types and can be used to customize the way projects are built, debugged, and deployed. Visual Studio uses project subtypes with Smart Device projects; they customize deployment by copying a newly-built program from a development computer to the target device. The Visual C# and Visual Basic project types can be used as the basis for project subtypes; Visual C++ project types cannot. Your own project types can also be used as the basis for project subtypes. For more information, see Project Subtypes.
- Web Projects
Explains Web project, which in turn create Web applications.
- New Project Generation: Under the Hood, Part One and New Project Generation: Under the Hood, Part Two
Explains what actually occurs when you create a new project.
- VSSDK Samples
Describes the samples in the Visual Studio SDK that deal with projects and solutions.
- NIB:Projects as Containers
Describes the relationship between projects and project items.