代码之家  ›  专栏  ›  技术社区  ›  Benoît photo_tom

从VisualStudioC++项目中提取有用的文件列表(带有路径)

  •  1
  • Benoît photo_tom  · 技术社区  · 14 年前

    我正与一个团队合作开发许多共享大量代码的Visual Studio(2008)项目。有些文件被所有项目使用,但有些文件只对1或2有用。 我正在寻找一种方法来提取一个特定项目的所有有用文件。

    我们使用的原则是共享目录。每个项目选择要在包含目录列表中使用的共享目录(在项目属性中)。所有这些目录都是在根目录中创建的(直接或不直接)。

     project_dir/  
     shared1_dir/  
     shared2_dir/  
     ...
    

    对于一个项目文件,复制所有需要的文件、保持共享目录结构但在新的根目录中最有效的方法是什么?这里的目标是对一个项目进行严格的归档。

    注意:共享目录中的源文件通常不是cpp文件,而是头文件(我们的项目使用很多模板)。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Benoît photo_tom    14 年前

    我用python编写了一个小工具来完成这项工作。原则是在devenv中为待归档的解决方案+项目启动一个“rebuild all”命令,并解释其输出。

    此命令应用于一个特殊配置(在我的例子中是“releaseinclude”),对其进行了一些细微的更改(与“release”配置相比): *启用选项“showincludes”(编译器选项) *已为库启用选项“/verbose:lib”(链接器选项)

    现在, *使用Visual Studio项目文件中的regexp,我可以检索所有cpp和其他资源文件。 *在编译输出上使用regexp(不要忘记为devenv启用输出!),我已经能够列出所有包含和库文件

    我还筛选了此文件列表以忽略以Visual Studio为中心的文件。

    测试和批准。