visual-studio - 有没有一种方法可以在Visual Studio中自动为 "Additional Dependencies"生成 "Custom Build"?

标签 visual-studio visual-studio-2013 custom-build-step

我在Visual Studio 2013解决方案中有一个自定义生成步骤。定制构建步骤在文本文件中调用python脚本,该文本文件引用了我的解决方案中的其他几个文件。我希望每当这些文件中的任何一个发生更改或脚本的输出丢失时,都将调用自定义生成步骤。但是,我不想手动维护自定义工具“其他依赖项”和“输出”字段。

我可以轻松地使脚本生成依赖项列表,就像gcc在-MM中传递时可以生成.d文件一样。有没有一种方法可以使用脚本的.d输出在“自定义构建”步骤中自动填充“其他依赖项”?还有其他方法可以避免维护“其他依赖项”和“输出”字段”吗?

help page仅显示如何添加单个文件。

最佳答案

假设用于生成.d文件的脚本可以生成所需的任何格式的文件,那么您应该能够通过使用 Import 元素来获得所需的结果:

  • 编写一个脚本,该脚本会生成一个小的项目文件,而不是.d文件。脚本的输出将是一个小的项目文件,其中包含“其他依赖项”和“输出”字段。
  • 使用Import标记使生成的文件成为主项目
  • 的依赖项
  • 当依赖项的组成发生更改时,请根据需要运行脚本。

  • 这种方法使您可以将主项目文件与自动生成的依赖文件分开维护,后者可以根据需要重新生成。唯一的缺点是您生成的依赖文件是MSBuild项目文件,而不是纯依赖文件。但是,这应该不是一个大问题,因为您拥有生成依赖文件的脚本。

    关于visual-studio - 有没有一种方法可以在Visual Studio中自动为 "Additional Dependencies"生成 "Custom Build"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15489129/

    相关文章:

    c++ - 为什么必须将参数强制转换为 const?

    c++ - 链接错误 - Qt 和 VS2013 上的 Oculus Rift Libs (Linux - Windows)

    c++ - 在条件语句中使用 NULL 和 '\0' 是否相同?

    c# - 使用 C# 获取 Visual Studio 项目的名称

    使用 visual studio 2008 构建 C++ 项目

    iis - 允许在 Visual Studio Express 2013 for Web 中加载 JSON 文件

    c++ - 未解析的外部符号 (LNK2001)

    c++ - VS2013 C++ 自定义生成工具不工作

    build - Intellij IDEA 项目中的自定义构建步骤

    tfs - 在TFS中如何填充Change.MergeSources字段?