VC生成的文件(转)
ILK文件
在增量链接时,LINK 更新在第一次增量链接期间创建的 .ilk 状态文件。该文件和 .exe文件或 .dll 文件具有相同的基名称,并具有扩展名 .ilk。在后面的增量链接期间,LINK 更新 .ilk 文件。如果缺少 .ilk 文件,则 LINK 执行完全链接并创建新的 .ilk 文件。如果 .ilk 文件无法使用,则 LINK 执行非增量链接。有关增量链接的详细信息,请参见渐进式链接(/INCREMENTAL) 选项。
PDB文件
程序数据库 (PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置进行增量链接。当以 /ZI 或 /Zi(用于 C/C++)生成时,将创建一个 PDB 文件。
MAP文件
Windows和Linux系统下都有map文件,map文件一般是用来保存符号的地址信息。这里的符号一般是指函数名及变量(局部、全局)。根据这个地址信息,便可以把地址翻译成相应的符号,很多系统工具、debug方法都要用到这种信息。一个程序编译完以后内容会分成两大类保存,一类是code,一类是data:code指程序代码,常存在.text sectiondata指存程序中声明的变量,常存在.data section,未初始化的变量会被存在.bss section。
在Windows下每一个模块(dll/exe)对应一个map文件,只需编译时打开相应的选项即可。
visual studio中方法:右击工程,选择Properties,然后选择 Configuration Properties -Linker - Debugging,将Generate Map File项改成Yes。
编译后在debug/release目录里便可以找到与应用程序同名的map文件。
VC文件扩展名一览表
APS:存放二进制资源的中间文件,VC把当前资源文件转换成二进制格式,并存放在APS文件中,以加快资源装载速度。
EXP:由LIB工具从DEF文件生成的输出文件,其中包含了函数和数据项目的输出信息,LINK工具将使用EXP文件来创建动态链接库。
ILK:连接过程中生成的一种中间文件,只供LINK工具使用。
LIB:库文件,LINK工具将使用它来连接各种输入库,以便最终生成EXE文件。
OPT:VC开发环境自动生成的用来存放WorkSpace中各种选项的文件。
RC:资源定义文件。
RC2:资源定义文件,供一些特殊情况下使用。
REG:注册表信息文件。
RES:二进制资源文件,资源编译器编译资源定义文件后即生成RES文件。