又红又专 发表于 2020-6-3 07:42

LOL频繁调用屏幕转换CALL导致 游戏崩溃

如题目所示 频繁调用转换屏幕转换call 导致游戏崩溃 可以取出游戏坐标值但是一般情况下会5-10分钟必崩溃具体原因不明确,检查了申请空间完毕后也释放了代码 请各位老师告知
c++如下
calltypedef struct ParamData   //屏幕转换call参数结构
{
        DWORD addr1; //参数1 是屏幕坐标地址 此地址为自己远程申请
        DWORD addr2; //人物坐标指针结构体
}ParamData, *Paramp;
ParamData CallParam;//屏幕转换
void WorldToscreen(LPVOID lParam) // 屏幕转换call
{

        Paramp lp;
        lp = (Paramp)lParam;
        DWORD p1 = lp->addr1;//此地址为我远程申请的一个12个字节的空间不用释放 每次在这里读出转换后的屏幕坐标 前四个字节为 x 中间四字节为y 存留四个字节空间
        DWORD p2 = lp->addr2;
        DWORD dwAddr = 0xD33280;
        _asm
        {
                  pushad
                        push p1
                        push p2
                        call dwAddr
                        add esp, 0x8
                        popad

        }


}



又红又专 发表于 2020-7-12 18:51

这个我知道什么错误了,今天有空写一下 算给大家个参考这是数据线程冲突问题不是call 线程冲突 冲突数据为人物坐标自己应该建立一个结构穿进去 不应该用游戏中已经有的3D坐标 ,如果call线程冲突可以绑定主线程 或者dll 注入

As-beel 发表于 2020-6-3 07:42

你的线程与主线程的数据访问发生冲突了, 应该挂钩主线程再去调用,这才是最安全的做法

又红又专 发表于 2020-6-3 07:44

前几天搞了大约一周这个游戏发现搞不下去了自己太菜,不过还是想问问大家{:7_239:}有一些基质大家可以找我要

九幽小丑 发表于 2020-6-3 09:08

又红又专 发表于 2020-6-3 07:44
前几天搞了大约一周这个游戏发现搞不下去了自己太菜,不过还是想问问大家有一些基质大家可以找我 ...

大佬来点{:5_116:}

又红又专 发表于 2020-6-4 10:47

As-beel 发表于 2020-6-4 10:22
你的线程与主线程的数据访问发生冲突了, 应该挂钩主线程再去调用,这才是最安全的做法

{:7_239:}可以呀 但是不知道代码怎么写呀....

耶稣 发表于 2020-6-5 21:03

你的调试驱动那里买的?

又红又专 发表于 2020-6-6 08:27

耶稣 发表于 2020-6-5 21:03
你的调试驱动那里买的?

LOL可以调试的

89935111 发表于 2020-6-9 22:14

lea edx, dword
mov ecx, dword
mov ecx, dword
mov eax, dword
call eax
mov eax, dword
mov ebx, dword
mov ecx, dword
mov dword , eax
mov dword , ebx
易语言的!

Pit丶妖 发表于 2020-10-14 14:34

又红又专 发表于 2020-6-6 08:27
LOL可以调试的

为什么直接用E语言对LOL无效了。是不是要弄读写驱动。CE可以用
页: [1] 2
查看完整版本: LOL频繁调用屏幕转换CALL导致 游戏崩溃