易语言软件安完整性CRC32自校验验证测试端

自校验验证测试端源码:

.版本 2
 
.子程序 自效验_CRC32, 逻辑型, 公开
.局部变量 文件名, 文本型
.局部变量 原exe字节集, 字节集
.局部变量 原exe长度, 整数型
.局部变量 PE文件头位置, 整数型
.局部变量 文件原始的CRC32, 字节集
.局部变量 当前文件的CRC32, 字节集
 
' 取执行文件名 ()
文件名 = 取空白文本 (256)
GetModuleFileName (0, 文件名, 256)
原exe字节集 = 读入文件 (文件名)
原exe长度 = 取字节集长度 (原exe字节集)
' 查找PE
PE文件头位置 = 寻找字节集 (原exe字节集, { 80.69 }, )
' 定位到PE文件头前4个字节处,并读出储存在这里的CRC32值
文件原始的CRC32 = 取字节集中间 (原exe字节集, PE文件头位置 - 4, 4)
当前文件的CRC32 = 到字节集 (校验_取crc32整数 (取字节集中间 (原exe字节集, PE文件头位置, 原exe长度)))
.判断开始 (文件原始的CRC32 ≠ { 0, 0, 0, 0 })
    .判断开始 (文件原始的CRC32 = 当前文件的CRC32)
        返回 (真)
    .默认
        返回 (假)
    .判断结束
 
.默认
    返回 (假)
.判断结束

CRC32自校验生成端示意图:

511遇见


发布日期:

所属分类: 易语言 标签: