前面我们讲了理论知识,本来打算再慢慢写的,不过有网友对这个话题很感兴趣,我就加快写了。
本文地址:http://www.hoverlees.com/blog/?p=1014
现在要做个实例,要实现这个功能,需要按以下步骤做:
1.创建需要加载到其它进程中的外部函数
2.编译这个代码
3.复制代码的机器指令到文件中
4.加密这个文件(可选)
5.其它进程使用VirtualAlloc(windows)或mmap(linux)将程序加载到内存中,如果加密了,需要在这里解密后加载。
6.执行程序。
下面我们进行要加载到内存的代码的编写,假设其它进程需要加载到内存中执行的函数叫get_number_line,我们先写出它的功能(就是获取一个文件的行数)
查看详细内容 »