使用了比较久VC6.0,但是从来没有关注过VC的详细编译过程,刚好同事这两天做反编译工作,所以就查了一下VC的编译工具cl的编译设置。
下面简单的说两个我自己比较关注的问题:
1、让VC在编译过程显示详细的参数(去掉/nologo):
那么,编译过成的输出如下:
可以看到,所有的编译参数了。
2、只编译生成对应的汇编文件:
在反编译过程其实主要是分析汇编文件的,但是为了把我们所做的反编译结果(就是C语言结果)进行验证,就必须重新编译成汇编结果,并与之前的汇编语言进行对比,一致才说明自己结果的正确性。
如果要生成汇编文件,需要设置如下选项:
这样在VC的生成目录(Release/Debug),就生成对应的汇编文件了。
有关于详细的编译参数和相关设置,可以参考:VC6.0编译参数设置