Projects (Visual Studio SDK)

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 Visual Studio Extensibility 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 Visual Studio Extensibility 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.

  • Visual Studio Extensibility Samples
    Describes the samples in the Visual Studio SDK that deal with projects and solutions.

  • Projects as Containers
    Describes the relationship between projects and project items.

  • Extending Visual Studio Overview
    Introduces the Visual Studio SDK and discusses how to build products that run in and extend the Visual Studio integrated development environment (IDE).