去皱针多少钱一针:exe文件合并原理
来源:百度文库 编辑:神马品牌网 时间:2024/09/03 05:37:22
请问以前用过一个叫"天忆文件合并器"的软件,可以把两个exe文件合并成一个exe,执行这个合并后的EXE文件就相当于执行了合并的两个exe文件.
谁知道这EXE文件合并的原理啊?是不是要用到PE文件结构呢?
谁知道这EXE文件合并的原理啊?是不是要用到PE文件结构呢?
其实用不着知道PE文件结构
其实你可以自己做个试验 在exe文件最后再写些东西 exe文件的执行是不会受影响的
它就是由一个主程序 然后后面放了你的两个程序
当你执行这个exe时它会自己读自己把程序后面的东西读出来
然后在执行读出来的东西(估计是还原成两个exe文件然后执行)
就是这个原理
P.S. WinRAR字节压缩包也是这个原理 只不过后面的数据是压缩过的
生成的目标文件结构大致分为三个部分
1.解码器:负责在目标文件中释放各各EXE文件
2.一个或多个EXE文件的绑定块
3.节表
在绑定的过程:绑定器创立目标文件之后,首先在其中写入解码器,然后在解码器后面追加要绑定的EXE文件,然后将文件结构的相关信息如:每个EXE文件的起始地址等信息记录在节表中,再将节表追加到目标文件尾部,目标文件生成完毕.
执行过程:解码器首先被执行,在其文件尾部获取节表,读取相应信息来释放文件中的各各EXE文件.
那样是不行的。
如果是病毒会 识别出来。
这样做。
执行一个A的指令。堆栈保存CPU暂存器的值,执行B的。继续下去。
设主程序为M,两合并程序为A、B
将A、B的大小添加在M的尾部,然后再将A、B分别追加在M尾部。
M程序的作用是,执行M+A+B时,根据M中A、B的大小,重新抠出A、B程序,再分别执行A、B
明白了吗?