1

如何在 Inno Setup 中实施 MD5 检查,以便它可以验证基本安装程序文件(exe + bins)InitializeSetup- 这是标准的 NSIS 功能,它非常有用,因为它会通知安装程序是否正常或损坏?

在 IS 的情况下,可能需要嵌入 MD5Summer 或其他 MD5 检查器并在编译期间/之后创建 MD5 总和。

4

2 回答 2

1

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

如果您正在使用磁盘跨越(由文件的存在暗示.bin),则.bin文件可能不可用(在不同的磁盘上),因此在安装程序到达该磁盘之前不会被扫描。

于 2012-09-10T12:34:54.340 回答
0

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

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

2) 在运行时在 InitializeWizard() 函数中使用插件。

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

拥有小的 setup.exe 很重要 - 哈希必须始终位于 [Files] 部分顶部附近的同一位置,以便快速解压缩。并且一切都必须是可靠的,因此在 setup.exe 中添加哈希不会修改 .bins 的 md5。

于 2012-09-11T04:48:55.407 回答