Dyingchen 发表于 2019-7-15 10:11

关于c++如何在dll中实现植物大战僵尸外挂功能的求助


拿植物大战僵尸作例子,如图,假如说在40fe2f处有一句汇编是je 410754 我该如何在自己的dll里面把这句改成直接跳转jmp?

苏紫方璇 发表于 2019-7-15 13:49

WriteProcessMemory

Dyingchen 发表于 2019-7-15 15:08

苏紫方璇 发表于 2019-7-15 13:49
WriteProcessMemory

好的 不懂再来问版主

StAr蓝月 发表于 2019-7-17 10:10

如果是 DLL注入直接 用 RtlMoveMemory 效率会高一些或者 直接 操作指针赋值

Dyingchen 发表于 2019-7-18 23:06

苏紫方璇 发表于 2019-7-15 13:49
WriteProcessMemory

DWORD dwBytes;
WriteProcessMemory(INVALID_HANDLE_VALUE,(LPVOID)(6A9EC0 + 768 + 5560), "5000", 4, &dwBytes);
这个函数没办法识别这个地址啊

苏紫方璇 发表于 2019-7-19 02:09

Dyingchen 发表于 2019-7-18 23:06
DWORD dwBytes;
WriteProcessMemory(INVALID_HANDLE_VALUE,(LPVOID)(6A9EC0 + 768 + 5560), "5000", 4,...

先描述下这行代码要做什么

Dyingchen 发表于 2019-7-19 23:44

苏紫方璇 发表于 2019-7-19 02:09
先描述下这行代码要做什么

我现在这样写
DWORD dwBytes;
WriteProcessMemory(INVALID_HANDLE_VALUE, (LPVOID)(0x006A9EC0 + 768 + 5560), "5000", 4, &dwBytes);
可以识别这个地址但是好像没有效果,我想要改变这个被注入的进程6a9ec0+768+5560这个位置的内存为5000

苏紫方璇 发表于 2019-7-20 00:31

Dyingchen 发表于 2019-7-19 23:44
我现在这样写
DWORD dwBytes;
WriteProcessMemory(INVALID_HANDLE_VALUE, (LPVOID)(0x006A9EC0 + 768 + ...

5000那里不该是字符串吧,另外没有效果可以看下WriteProcessMemory的返回值和GetLastError
页: [1]
查看完整版本: 关于c++如何在dll中实现植物大战僵尸外挂功能的求助