分享一个开源的批量修改VC工程属性的小工具

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

 

一.问题起源和定义

 

        在使用VC开发时,当一个解决方案的工程数多达几十个甚至上百个,因为工程设置基本是一样的,因此修改工程项目属性成了一件单调的事情。这里所说的工程属性包括输出目录、中间目录、预处理器、第三方库头文件路径和第三方库文件路径等等。传统上解决这个问题有两个办法:一个是自定义工程向导,通过自己的工程向导来生成具有统一设置的工程;二是使用属性表。但这两种办法有着严重的弊端:使用工程向导只是新建工程时可以统一设置,一旦以后有属性选项修改,还是得一一进行修改;属性表我发现只局限于设置第三方库的头文件和库文件,同时也必须在每个工程一一加上属性表(这个也可能我对属性表使用不熟有关,请熟悉的同学告诉我)。

 

                  因此我需要一个批量修改工程属性的工具。

 

二.解决方案和已完成的工作

 

        于是利用周六一点时间开发了一个小工具SetPrjProps。SetPrjProps是这样工作的:

 

           SetPrjProps被设计一个命令行工具,其用法如下:

 

             SetPrjProps  ini文件  sln文件


         例如:  SetPrjProps    D:\dev-utility-tools\src\bcg_props.ini    D:\dev-utility-tools\src\Test.sln

        到时把SetPrjProps放在源码目录下,使用一个批处理文件就能调用。

        目前批量修改一个解决方案下的所有VC工程的属性已经实现,修改的工程属性涉及输出目录、中间目录、第三方库的头文件和库文件等等(目前仅支持VS2008的MFC、Win 32和控制台工程),具体请见源码。

 

一.VS解决方案文件和VC工程文件格式简单说明

 

        经过我研究,VS解决方案文件只是一个简单的文本文件,并非我之前以为的xml文件,所记录的工程路径包括两种:和解决方案文件处在同级目录的是相对路径,否则是绝对路径;VC工程文件则是一个xml文件,保存的是有意义的信息,即某项属性设置为空,则不保存到VC工程文件。

 

        源码已上传至http://code.google.com/p/dev-utility-tools/source,采用GPL V2.0开源协议,有兴趣请下载看看。

 

 




posted on 2013-02-23 23:35  岚之山  阅读(155)  评论(0编辑  收藏  举报

导航