完整解析,需要掌握 汇编,C++ , PE文件结构 等内容。
简单处理:
1、编译你的工程,生成一个可执行文件 。得到第一个文件
2、使用 PE资源修改器(如 PE Explorer),修改你的 第一个文件 ,得到第二个文件 。 如改图标,改公司名。。。
3、比较不同的内容,得到 对应 资源的起始位置和数据代码。如果数据代码不可用,那还可以重复1、2步骤,然后在这步读取新的内容,保存为二进制数据。
4、使用二进制模式打开可执行性文件,根据得到的起始位置,根据保存的二进制数据,修改指定的内容。
这样的结果,每个修改程序对应的应用程序版本是固定,每一种修改的数据,你都需要事先提取指定的数据,保存为二进制数据备用。
但可以变通达到你的目的。
字符串对象,不能超过原长度 ,但长度不够时,可以到最后补充 CHR(0) ,或者写做 &H00 。
原长度很有可能在最后有一个 &H00 ,这个一定要保留的。