E语言注入游戏后如何内存读写

众所周知,大多数e语言教程内存读写都是通过某某模块直接从外部读写的。

最常见的某某.读内存小数型(进程句柄,参数地址),但是市面上的辅助都是直接注入到游戏内存里面,这种方法就明显不适用了,这时候大家就需要在网上各种搜寻可以读写的模块,但是一般这种模块藏的很深,很难找到,我自己学习的时候深有体会。

大家有没有想过这种模块的原理是什么?其实就是两个函数,一个ReadProcessMemory,另一个就是WriteProcessMemory,几乎所有模块都是依据这两个函数读写。这两个函数对应的库名都是kernel32.dll

ReadProcessMemory这函数总共有5个参数HANDLE hProcess,  进程句柄

                                                        LPCVOID lpBaseAddress,内存地址

                                                        LPVOID lpBuffer,存放地址

                                                        SIZE_T nSize,读取长度

                                                        SIZE_T *lpNumberOfBytesRead,写出长度,一般默认为0

WriteProcessMemory这5个函数参数大同小异和上面,就是三四个参数变成写入内容和写入长度

有了这两个函数,就可以实现内存读取了,应该很多人都不知道,注入了内存你就是这程序的一部分了,所以你可以在里面任意妄为了,读写自己内存不是易如反掌。

下面是例子,主要关键读内存代码,

.子程序 读整数, 整数型
.参数 内存地址, 整数型
.局部变量 存放地址, 字节集
存放地址 = 取空白字节集 (4)          //初始化字节集
读内存 (进程句柄, 内存地址, 存放地址, 4, 0)          //读内存是自己添加的dll,这个不需要说吧!
返回 (取字节集数据 (存放地址, #整数型, ))
这里说下为啥要存放地址要是字节集,主要是方便转换各种类型。

写内存代码也是大同小异,这里就不说了,其实也很简单,和上面没啥区别。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Religion_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值