如何在Inno Setup安装程序中实现MD5检查以获得“像NSIS完整性检查”?

时间:2012-09-10 12:16:11

标签: md5 inno-setup nsis integrity

如何在Inno Setup中实现MD5检查,以便它可以验证InitializeSetup上的基本安装程序文件(exe + bin) - 这是标准的NSIS功能,这非常有用,因为它可以通知安装程序是否正常还是腐败了?

如果是IS,可能需要嵌入MD5Summer或其他MD5检查程序,并在编译期间/之后创建MD5总和。

2 个答案:

答案 0 :(得分:1)

Inno已经对自己的内容进行了完整的完整性检查。无需额外检查。

如果您正在使用磁盘跨度(隐含.bin文件),那么.bin文件可能不可用(在不同的磁盘上),因此在安装到达之前不会扫描磁盘。

答案 1 :(得分:0)

为所有.bin文件创建md5哈希怎么样? 这应该分两步完成:

1)从已编译的.bin(s)创建md5哈希 - 哈希将作为文本文件存储在setup.exe中 [所以这是一个2步编译:创建.bins,为.bins创建哈希并再次编译以将哈希包含到setup.exe中]

2)在使用插件的InitializeWizard()函数中的runtine。

您可以轻松地将哈希值与某些Pascal字符串比较函数或简单地“=”进行比较。 如果散列不匹配,则在显示任何窗口之前可以存在安装程序。

设置小的setup.exe非常重要 - 哈希必须始终位于[Files]部分顶部附近的同一位置才能快速解压缩。 一切都必须坚固,所以在setup.exe中添加哈希不会修改.bins的md5。