【发布时间】:2008-12-06 02:57:42
【问题描述】:
我们的 QA 团队希望根据 EXE 和 DLL 在构建之间的实际更改来集中测试。我们有一个不错的 svn 更改报告,但是源代码和更改后的二进制文件之间的关系并不总是很明显。我们比较的构建总是完全干净的构建,所以我们不能使用文件系统时间戳。我正在寻找用于比较 Windows(和 Windows CE)PE 二进制文件的工具,这些二进制文件将忽略嵌入的时间戳和其他杂乱无章的东西。对于生成可靠的“哪些二进制文件真正改变了”报告的工具或其他方法有什么建议吗?谢谢。
澄清:感谢到目前为止的回答,但我们无法通过直接逐字节比较或比较校验和来生成报告,因为每次构建时所有文件看起来都不同,即使源没有' t 改变了,因为编译器插入了时间戳。问题是如何忽略误报。我认为拆解和比较的想法最接近我们的需要......
回答! Bindiff 正是我想要的。非常感谢。
【问题讨论】:
-
有趣的技术问题,但是是什么让“EXEs/DLLs changed”列表比“source files changed”列表更相关?
-
这里是场景:svn 说 ObscureLib.c 自上次构建以来发生了变化。我应该重新运行 foo.exe 的测试套件吗?
标签: windows diff compare build binaries