解决方案配置

解决方案配置存储解决方案级属性。 它们指示 Start (F5) 键和生成命令的行为。 默认情况下,这些命令会生成并启动调试配置。 这两个命令都在解决方案配置的上下文中执行。 这意味着用户可以期望 F5 通过设置启动和生成任何活动解决方案。 在生成和运行解决方案时,环境旨在针对解决方案而不是项目进行优化。

标准 Visual Studio 工具栏包含“开始”按钮和“开始”按钮右侧的解决方案配置下拉列表。 此列表允许用户选择在按下 F5 时启动的配置、创建自己的解决方案配置或编辑现有配置。

注意

没有用于创建或编辑解决方案配置的扩展性接口。 必须使用 DTE.SolutionBuild。 但是,有用于管理解决方案生成的扩展性 API。 有关详细信息,请参阅 IVsSolutionBuildManager2

下面介绍了如何实现项目类型支持的解决方案配置:

  • 项目

    显示当前解决方案中找到的项目的名称。

  • 配置

    若要提供项目类型支持并在属性页中显示的配置列表,请实现 IVsCfgProvider2

    “配置”列显示要在此解决方案配置中生成的项目配置的名称,并在单击箭头按钮时列出所有项目配置。 环境调用 GetCfgNames 方法以填写此列表。 GetCfgProviderProperty如果该方法指示项目支持配置编辑,则“配置”标题下也会显示“新建”或“编辑”选择。 每个选择都会启动对话框,这些对话框调用接口的方法 IVsCfgProvider2 以编辑项目的配置。

    如果项目不支持配置,则“配置”列将显示“无”,并且已禁用。

  • 平台

    显示所选项目配置生成的平台,并在单击箭头按钮时列出项目的所有可用平台。 环境调用 GetPlatformNames 方法以填写此列表。 GetCfgProviderProperty如果该方法指示项目支持平台编辑,则“平台”标题下也会显示“新建”或“编辑”选择。 每个选择都会启动对话框,这些对话框调用 IVsCfgProvider2 方法来编辑项目的可用平台。

    如果项目不支持平台,则该项目的平台列将显示“无”,并且处于禁用状态。

  • 构建

    指定是否由当前解决方案配置生成项目。 在调用解决方案级生成命令时,不生成未选择的项目,尽管它们包含任何项目依赖项。 未选择生成的项目仍包含在解决方案的调试、运行、打包和部署中。

  • 部署

    指定当“开始”或“部署”命令与所选解决方案生成配置一起使用时,是否部署项目。 如果项目支持在其对象上IVsProjectCfg2实现IVsDeployableProjectCfg接口来部署,则此字段的检查框将可用。

    添加新解决方案配置后,用户可以从标准工具栏上的“解决方案配置”下拉列表框中将其选中,以生成和/或启动该配置。