了解生成配置

生成配置提供了一种方法,用于存储项目属性和多个版本的解决方案。 可以快速访问,并更改活动配置使用 解决方案配置 列表中 标准 工具栏。

默认情况下,使用 Visual Studio 创建的项目包括调试和发布配置。 自动配置“调试”配置以便调试应用程序,配置“发布”配置以便用于应用程序的最终发布。 有关更多信息,请参见如何:设置调试和发布配置。 也可以创建和编辑自定义解决方案和项目配置,以满足具体应用程序的要求。 有关更多信息,请参见如何:创建和编辑配置

在 Visual Studio 中可以定义两个级别的生成配置:解决方案配置和项目配置。

解决方案配置

解决方案配置指定如何生成和(如果已启用)部署解决方案中的项目。 若要定义新的解决方案配置,打开 配置管理器"对话框 并选择的 新建活动解决方案配置 列表。

解决方案配置中的每一项都包含项目名称、配置设置、平台设置、生成设置和(如果启用)部署设置。 所选解决方案配置和解决方案平台设置的组合决定了将要使用的项目配置。 有关解决方案平台的更多信息,请参见 了解生成平台

可以创建任意数量的解决方案配置,每个配置具有唯一的名称。 每当您进行下列任一操作时,Visual Studio 集成开发环境 (IDE) 都将自动分配解决方案配置:

  • 选择**“创建新的解决方案平台”**后,添加项目平台。

  • 选择**“创建新的解决方案配置”**后,添加项目配置。

  • 添加将要在多个平台(其中一个为新平台)上部署的新项目。

解决方案配置还在 IDE 中提供常规项目上下文信息。 例如,如果活动的解决方案配置指定将要为移动设备生成项目,则在您处理该项目时,“工具箱”将只显示可在移动设备项目中使用的项目项。

项目配置

项目配置和项目平台共同用于指定生成项目时要使用的属性。 对于配置和平台的每种唯一组合,项目都可以有一组已定义的项目属性。 使用项目设计器对项目属性进行编辑。 “项目设计器”中的某些窗格包含一些下拉列表,用于指示当前的项目配置和平台的组合。

可以根据需要在每个项目配置中定义依赖于配置的属性。 例如,项目属性可用于确定哪些项目项将包含在特定版本中,将创建哪些输出文件,在何处放置这些输出文件以及如何对其进行优化。

项目配置的差异可以很大。 例如,某项目配置的属性可能指定优化其输出文件,以便所产生的二进制文件占有空间最小,而另一个项目可能进行优化,以便其可执行文件运行速度最快。

项目配置不是按用户存储,而是按解决方案存储,所以组可以共享项目配置。 尽管项目依赖项与配置无关,但将只生成在活动解决方案配置中指定的那些项目。

更改解决方案配置

当生成解决方案时,Visual Studio 使用活动解决方案配置,后者指定每个要生成的项目所要使用的项目配置。 可以直接从的 解决方案配置 更改活动配置下拉列表在标准工具栏,或者从 配置管理器 对话框。

备注

如果在“标准”工具栏上找不到解决方案配置设置,或者无法访问“配置管理器”,则可能已经应用了 Visual Basic 开发人员设置。有关更多信息,请参见如何:在应用 Visual Basic 开发人员设置后管理生成配置

IDE 如何分配要生成的项目配置

当创建新的解决方案配置(而不是复制已有的配置)时,对于要生成的每个项目,IDE 使用下列选择条件(按此顺序计算)确定默认项目配置:

  1. 新的解决方案配置将生成一个名称与其本身完全匹配的项目配置。 配置名称不区分大小写。

  2. 如果没有完全匹配的名称,则新的解决方案配置将生成名称与其名称的配置部分匹配的项目配置,而不管平台部分是否也匹配。 (请记住命名约定为 <configuration name> <platform-name>。)

  3. 如果仍没有匹配,则新解决方案配置将生成为某项目列出的第一个配置。

IDE 如何分配解决方案配置

在创建项目配置并选择**“创建新的解决方案配置”**时,IDE 将查找具有相应名称的解决方案配置,以便在项目支持的每个平台上生成项目。 在某些情况下,IDE 将重命名现有的解决方案配置,或创建新的解决方案配置。

IDE 使用下列选择条件确定如何分配解决方案配置:

  • 如果项目配置未指定平台或指定了单个平台,则将查找或添加一个名称与新项目配置名称匹配的解决方案配置。 在此情况下,此默认解决方案配置的名称不包含平台名称,它采用 <project configuration name> 形式。

  • 如果项目支持多个平台,则对于每个项目配置均查找或添加一个解决方案配置,以便在项目支持的每个平台上生成各个项目。 每个解决方案配置的名称均包含项目配置名称和平台名称,它采用 <project configuration name> <platform name> 形式。

请参见

参考

Devenv 命令行开关

概念

演练:生成应用程序

解决方案和项目基础

项目设计器介绍

其他资源

在 Visual Studio 中构建应用程序

C/C++ 生成参考