VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 849|回复: 1

[推荐] Visual Studio项目清理(批处理)

[复制链接]
16_avatar_middle
最佳答案
0 
在线会员 发表于 2019-4-3 16:43:13 | 显示全部楼层 |阅读模式
  1. del /q/s *.o *.hex *.bin *.idb *.pdb *.pch *.obj *.lst *.opt *.m51 *.bak *.lnp *.plg *.ncb *.pfi *.po *.rr *.pri *.psc *.__i *.a51 *.IAB *.IAD *.IMB *.IMD *.PR *.PS *.WK3 *.DBG *.ilk *.sbr *.sdf *.ipch *.bsc BuildLog.htm *.dep *.manifest *.mac *.log *.wrn *.sdf

  2. rd /q/s ipch Debug Release
复制代码

将以上代码复制到记事本中,扩展名改为bat,复制到Visual Studio解决方案目录下,双击执行,即可清理Visual Studio编译时所产生的临时文件!
  • sln:解决方案文件,主要包括工程项目组织结构、位置、工程编译环境配置等信息;
  • ncb:(no compile browser)VC++自动创建的信息跟踪文件,可以删除,重新打开解决方案后会自动再次创建,此文件一般比较大;
  • vcproj、vcxproj:项目工程文件,里面包含的该工程的工具集、工程编译、链接、调试等相关的配置;不同VS IDE的项目转化,可以通过修改此文件实现,低版本转高版本IDE,则直接打开即可,而高版本转到低版本需要修改工程文件,另外版本间转化可能会出现某些API使用等限制,可能需要修改、替换;vcproj与vcxproj内容、结构还是有所差异,转化时需要修改的地方比较多,如果修改的地方比较多,可以重新建立工程将相应文件添加进去,修改工程属性也可;
  • vcxproj.user:不同用户有不同的本地用户配置,主要是一些窗体布局、位置等,与项目具体内容一般无关,可以删除;
  • aps:主要记录资源信息, aps 可以删除,进入程序,重新打开解决方案后会自动生成;
  • VC.db:SQLite3格式的文件,里面应是项目相关的文件信息,同ncb、sdf文件,一般比较大,可以删除,重新打开解决方案后会自动创建;
  • props/vsprops:工程属性表文件,后者为vs2008的,前者为vs2010及以后版本的,其主要包含工程属性配置相关,可以单独提取出来供不同工程项目公共使用;
  • pdb:调试的符号文件,程序数据库 (PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置;
  • exe:编译、链接后产生的可执行文件,当然也可以是库,exe相对obj来说,前者提供的是绝对地址,而后者只是提供相好地址;
  • obj:c、cpp编译后的二进制目标文件,一般提供给IDE链接用的,当然也可以将其发给客户或开发人员使用并提供h头文件,不过这样的做法很少,一般给用户的是编译后的dll或exe;
  • lib:分为静态库文件和动态库dll的引入库文件,前者供其他模块或程序静态链接,后者只是提供方便的隐式链接而不是调用LoadLibrary和频繁的GetProcessAddress;
  • dll:动态库文件,供客户或其他开发人员使用,一般附加h头文件,或者某些还提供lib引入库或def文件;
  • ilk:增量链接期间产生的临时文件,若取消生成,则可能导致编译链接比较慢;
  • log:主要记录编译过程中的输出信息、日志;
  • manifest:VS提供的程序部署、清单文件,在早些时候编译的Debug或Release版本的程序时需要提供该清单文件,不过可以通过配置工程属性实现程序的内嵌该清单文件,此外还可以根据需要提供额外的其他清单文件;
  • rc/rc2:资源文件,应用程序中用到的所有的资源,其中rc文件中的资源可以直接在VC集成环境中以可视化的方法进行编辑和修改,rc2则可根据需要只能手动修改,一般使用的时候可根据需要在rc文件中包含rc2文件;rc2文件可以单独独立提出来,供不同工程项目rc文件include使用而不用每个工程都去创建相同的rc2文件内容,不同项目工程应有自己的rc文件,事实上rc文件中还可以包含其他的rc文件;
  • ico:应用程序的图标资源文件;
  • suo:储存了用户界面的自定义配置,包括布局、断点和项目最后编译的而又没有关掉的文件等,以便下一次你打开Visual Studio可以恢复这些设置,一般为隐藏文件;
  • sdf:解决方案工程信息数据库文件,此文件同ncb文件,都比较大,也可以删除,重新打开解决方案后会自动创建,主要提供提供的智能感知、代码恢复等信息;
  • ipch:主要保存预编译的头文件和智能提示信息用的,也可以删除,重新打开解决方案后会自动创建;
  • filters:一般为虚拟目录,及项目工程解决方案视图下分类过滤器目录,一般不要删除,否则可能导致所有文件杂糅在一起;
  • def:一般是用作动态库导出文件,里面主要包含导出库名、描述、导出的各个函数;若不使用export导出函数或类,可采用def的方式也比较简单,而且还可以导出相同函数地址的不同得名称,其可防止导出函数重命名,以供其他编程语言或工具使用;
  • exp:生成动态库dll时的临时导出库,主要用在多个库相应引用链接时,供IDE使用;一般客户或开发人员不会使用到该文件;
其他一些常见的特定文件
  • ReadMe.txt:里面主要是一些工程创建时向导产生的各个文件描述信息;
  • targetver.h:主要定义程序运行的环境,如限制程序、定制版本,如WINVER、_WIN32_WINNT、_WIN32_WINDOWS、_WIN32_IE等宏定义,此外有的版本还包括SDKDDKVer.h或WinSDKVer.h平台版本控制;
  • stdafx.h:包含targetver.h,可定义或声明一些公用函数、宏、结构、需要的头文件等信息,因各个cpp一般会包含引用stdafx.h,故以此实现控制各个cpp文件中可能用到的宏控制等以及预编译;
  • stdafx.cpp:很少做其他的用途,一般只是#include “stdafx.h”,已生成pch预编译头,当然用户也可以根据需要做其他的功能实现等,采用预编译头文件方式,从而可以加速编译过程;
  • dllmain.cpp:DLL应用程序的入口点,这里边可以做一些库第一次加载、卸载,以及新线程加载该库时执行的相关的工作,比如通信socket、某些全局变量、共享资源、挂钩等管理;








上一篇:控制台截屏例程
下一篇:五子棋纯C源码

本帖被以下淘专辑推荐:

您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-10-27 02:18

Powered by CcTry.CoM

© 2009-2020 cctry.com

快速回复 返回顶部 返回列表