项目类型基础知识

Visual Studio 包含多种适用于 Visual C# 或 Visual Basic 等语言的项目类型。 Visual Studio 还允许你创建自己的项目类型。

如果只想将自定义命令、编辑器或工具窗口添加到 Visual Studio,则可以在不创建新的项目类型的情况下执行此操作。 有关详情,请参阅以下主题:

  • 命令、菜单和工具栏

  • 编辑器和语言服务扩展

  • 扩展和自定义工具窗口

    同样,如果要自定义提供的 Visual C# 和 Visual Basic 项目类型的行为,可以使用项目子类型执行此操作。 有关详细信息,请参阅 Project 子类型

    如果要支持以下一个或多个项目,则必须为基于 Visual C# 和 Visual Basic 以外的语言的项目创建新项目类型:

  • 生成

  • 部署

  • 多重配置

  • 源代码管理

  • 调试

  • 解决方案资源管理器中的项目项

  • 打开项目 ”或 “新建项目 ”对话框

  • 项目嵌套

  • 有关项目类型功能的详细信息,请参阅以下内容:

  • 项目类型是实现 Visual Studio 预期接口集的 VSPackage 中的对象。 如果使用 C# 开发项目类型,则托管包框架项目类将实现必要的接口,并允许继承该实现。 有关详细信息,请参阅使用托管包框架实现项目类型(C#)。

  • 对于 C++ 开发人员,HierUtil 库中的类的工作方式类似。 有关详细信息,请参阅“不在生成”中:使用 HierUtil7 项目类实现项目类型(C++)。

  • 项目类型可以支持生成到 .exe 或 .dll 程序集中的典型源代码文件以外的数据。 例如,Visual Studio 数据库项目包含对磁盘上存储的脚本和查询文件的引用,并添加命令以解决方案资源管理器对数据库执行脚本和查询,但项目不支持生成行为。 有关详细信息,请参阅 “打开和保存项目项”。

  • 项目类型根本不需要使用文件。 例如,项目类型可以将所有数据存储在数据库中。 Visual Studio 为项目类型提供对项目和项目项的数据保留方式的完全控制。 有关详细信息,请参阅 项目类型设计决策

  • 项目类型必须提供项目 工厂,该工厂是每当 Visual Studio 被告知打开或创建基于该项目类型的项目时创建项目类型的实例的对象。 有关详细信息,请参阅 使用项目工厂创建项目实例。

  • 项目类型必须提供项目和项目项的模板。 当用户创建新项目并将新项添加到现有项目时,Visual Studio 将使用模板。 有关详细信息,请参阅 “添加项目”和“项目项模板”。

  • 项目类型可以支持多种配置,例如调试和发布。 用户可以使用提供的属性页更改项目的不同配置。 有关详细信息,请参阅 “管理配置选项”。

另请参阅