是否有 Visual Studio 项目配置宏定义 DEBUG 或 RELEASE 而不管项目配置名称?
Is there a Visual Studio Project Configuration Macro which defines DEBUG or RELEASE regardless of the Project Configuration Name?
我看到使用名为 $(Configuration)
的 Visual Studio 宏作为构建文件路径是一件很常见的事情。
例如,如果您在 Visual Studio 2013 中创建一个新的 Visual C++ 项目,您的默认 属性 Sheet 将如下所示:
$(Configuration)
宏是当前项目配置的名称。如果您不重命名您的配置或创建新配置,您将能够在需要设置 Debug
或 Release
的任何地方添加 $(Configuration)
。这样,您可以为 所有配置 设置配置 属性,而不是转到每个 Release 或 Debug 配置并单独设置它。
但是如果您决定重命名您的配置怎么办?并且您希望将它们内置到相同的 Release
或 Debug
目录中,而不是为每个配置创建一个新文件夹?即使配置以其他方式命名,仍然有办法获取宏或定义一个 Debug
或 Release
的宏吗?
属性 sheets 允许您制作 'User Defined Macros',它转换为您可以在项目文件中使用的配置变量。你会:
- 创建两个property sheets。
- 在每个中,创建一个用户定义的宏(命名为
ConfigurationType
- 创建时不要使用 $
或 ()
),在一个 属性 sheet,你可以在一个中将它的值设置为 Debug
,在另一个中设置为 Release
。
- 将适当的 属性 sheet 附加到 属性 管理器(VS 菜单中的视图->属性 管理器)中的每个配置。
- 在您的项目属性中使用
$(ConfigurationType)
(或任何您命名宏的名称),但您认为合适 - 例如。而不是你的 ($Configuration)
宏。
如果您有大量共享公共属性的配置,属性 sheet 是管理设置的更简单的方法。我经常使用所描述的方法,例如链接第三方库,它们通常只有 Debug
和 Release
构建,而我的项目有很多配置。
注:
但是,将此用于中间目录输出时要小心 - 如果您有两个配置使用同一个配置,那么您可能 运行 会遇到问题。
我看到使用名为 $(Configuration)
的 Visual Studio 宏作为构建文件路径是一件很常见的事情。
例如,如果您在 Visual Studio 2013 中创建一个新的 Visual C++ 项目,您的默认 属性 Sheet 将如下所示:
$(Configuration)
宏是当前项目配置的名称。如果您不重命名您的配置或创建新配置,您将能够在需要设置 Debug
或 Release
的任何地方添加 $(Configuration)
。这样,您可以为 所有配置 设置配置 属性,而不是转到每个 Release 或 Debug 配置并单独设置它。
但是如果您决定重命名您的配置怎么办?并且您希望将它们内置到相同的 Release
或 Debug
目录中,而不是为每个配置创建一个新文件夹?即使配置以其他方式命名,仍然有办法获取宏或定义一个 Debug
或 Release
的宏吗?
属性 sheets 允许您制作 'User Defined Macros',它转换为您可以在项目文件中使用的配置变量。你会:
- 创建两个property sheets。
- 在每个中,创建一个用户定义的宏(命名为
ConfigurationType
- 创建时不要使用$
或()
),在一个 属性 sheet,你可以在一个中将它的值设置为Debug
,在另一个中设置为Release
。 - 将适当的 属性 sheet 附加到 属性 管理器(VS 菜单中的视图->属性 管理器)中的每个配置。
- 在您的项目属性中使用
$(ConfigurationType)
(或任何您命名宏的名称),但您认为合适 - 例如。而不是你的($Configuration)
宏。
属性 sheet 是管理设置的更简单的方法。我经常使用所描述的方法,例如链接第三方库,它们通常只有 Debug
和 Release
构建,而我的项目有很多配置。
注:
但是,将此用于中间目录输出时要小心 - 如果您有两个配置使用同一个配置,那么您可能 运行 会遇到问题。