本帖最后由 我是菜鸟 于 2017-7-22 23:50 编辑
一、准备工作打开vs,以 vs2010为例。新建一个控制台程序,使用默认设置(工程名称 ConsoleApplication1)。编译 release,生产 exe 文件,文件名称为ConsoleApplication1.exe,备份改文件,重新编译该工程,重新生词ConsoleApplication1.exe。
二、使用Beyond Compare 比较两个 exe 文件。查看比较结果,发现有两处不一致的地方。
1、第一处
按照 pe 文件结构来看,该处的不同为TimeDateStamp,时间戳,两次编译的时间不一样,所以该字段也不一样
1、第二处
该处为什么不一样?按照相同代码,在相同的环境进行编译,除了时间不一样以外,其他的应该都一样?
最近在公司利用 C#写了一个程序,现在发布版本,到时候需要回溯软件。要求同一份代码,编译出来的 exe 需要保持一致,如果不一致,则认为软件有改动。该问题已经困扰两天。求教各位大神,非常感谢 orz!!!
|