【问题标题】:Visual Studio/devenv: Ensure Preprocessor Macros run when using devenv/CLIVisual Studio/devenv:确保使用 devenv/CLI 时运行预处理器宏
【发布时间】:2013-08-18 22:59:00
【问题描述】:

使用 Visual Studio 2005,我遇到了一个问题,即 devenv 的行为与 GUI IDE 不同,即使在调用 VCvarsall.bat 并使用 /useenv 切换到 devenv 时也是如此。即使我只在这个项目上运行 clean(当我使用 GUI 时,我需要 devenv 以相同的方式运行),也会调用创建一堆文件的东西。我唯一能找到的可能是预处理器宏。没有预构建或预链接事件,只有构建后事件,这似乎不是创建这些文件的原因。我是 VS 新手,不是程序员,这不是我的项目。我只负责通过 CLI 将其自动化。请原谅我的无知并帮助我。

TL;DR 当我运行 /rebuild 时,如何确保 devenv 与 GUI 执行完全相同的操作?如何确保 Devenv 使用项目中定义的预处理器宏?

【问题讨论】:

    标签: visual-studio batch-file preprocessor devenv


    【解决方案1】:

    它们是不同的动物,可能一直都是,而且谣言是它们不在 VS2013 中,但当我看到它时我会相信。

    预处理器宏确实从两者运行。检查 .*proj 文件中的条件,以确定 <DefineConstants>DEBUG;TRACE</DefineConstants> 是否符合您对预处理器条件的预期。

    使用/v:diag 在 VS 和 msbuild 中运行您的构建,并在 DefineConstants 属性中查找差异。要使 VS 执行该级别的日志记录,它位于工具菜单 -> 选项 -> 项目和解决方案 -> 构建和运行 -> MSBuild 项目构建输出详细程度。

    【讨论】:

      猜你喜欢
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      • 2012-11-15
      • 1970-01-01
      • 1970-01-01
      • 2011-11-28
      • 1970-01-01
      • 2015-11-09
      相关资源
      最近更新 更多