游戏辅助 -- 获取人物属性代码编写

简介: 游戏辅助 -- 获取人物属性代码编写

一、在上节课DLL注入窗口我们已经实现了注入dll,这节课我们利用线程注入


DWORD WINAPI 窗口函数地址(LPVOID arg)
{
       AFX_MANAGE_STATE(AfxGetStaticModuleState());
       DLLTEST dt;
       dt.DoModal();
       FreeLibraryAndExitThread(theApp.m_hInstance, 123);//自动卸载dll
       return 1;
}
BOOL CMFCDLLApp::InitInstance()
{
       CWinApp::InitInstance();
       DWORD 线程ID = 0;
       ::CreateThread(0, 0, 窗口函数地址, 0, 0, &线程ID);
       return TRUE;
}


二、在窗口添加三个按钮,分别实现调试信息输出、解绑调试信息,获取护甲值


DWORD 读地址(UINT_PTR 地址)
{
       __try
       {
              return *(DWORD*)地址;
       }
       __except (1)
       {
              return 0;
       }
}
VOID CALLBACK 护甲(HWND h, UINT arg2, UINT_PTR arg3_id, DWORD time)
{
     
       KillTimer(h, 11111);
     
       const char* 参数1 = "player";
       UINT_PTR 返回值 = 0;
       UINT_PTR 函数地址 = 0x60C1F0;
       __asm
       {
              push 参数1
              call 函数地址
              add esp, 4
              mov 返回值, eax
       }
       DWORD 护甲 = 读地址(读地址(返回值 + 0xD0) + 0x174);
       char buf[256];
       sprintf_s(buf, "护甲=%d\r\n",护甲);
       printf(buf);
};
void DLLTEST::OnBnClickedButton1()
{
     
       HWND 游戏窗口句柄 = FindWindowA("GxWindowClassD3d", "魔兽世界");
       ::SetTimer(游戏窗口句柄, 11111, 1, 护甲);
}
void DLLTEST::OnBnClickedButton2()
{
       AllocConsole();
       FILE* file = 0;
       freopen_s(&file, "CONOUT$", "w+t", stdout);
}
void DLLTEST::OnBnClickedGbtsck()
{
       FreeConsole();
}


三、查看效果


0a2653c851af460fa595bd959398a8f1.png

目录
相关文章
|
7月前
|
vr&ar 图形学
2D丨3D元宇宙游戏系统开发详细规则/需求步骤/逻辑方案/源码步骤
Developing a 2D/3D metaverse game system involves multiple aspects, including game design, graphics engines, virtual world construction, social interaction, and economic systems. The following is a summary of a development plan:
|
19天前
|
存储 算法 C语言
用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容
本文探讨了用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容,旨在为开发者提供全面的指导和灵感。
35 2
|
5月前
|
UED
软件开发常见流程,好的用户体验,智能引导助手,介绍软件相关操作,会画个键盘,对键盘的相关键进行标注,效果动态展示图怎样画????弄一个图标,相关介绍
软件开发常见流程,好的用户体验,智能引导助手,介绍软件相关操作,会画个键盘,对键盘的相关键进行标注,效果动态展示图怎样画????弄一个图标,相关介绍
|
7月前
|
测试技术 网络安全 虚拟化
游戏辅助 -- 某游戏一键端配置
游戏辅助 -- 某游戏一键端配置
58 0
|
7月前
|
前端开发 Java 生物认证
java实现人脸识别源码【含测试效果图】——前期准备工作及访问提示
java实现人脸识别源码【含测试效果图】——前期准备工作及访问提示
|
7月前
|
前端开发 算法 JavaScript
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
139 0
|
7月前
|
人工智能 移动开发 数据可视化
推荐几个不用写代码也能做游戏的工具
推荐几个不用写代码也能做游戏的工具
365 0
|
JSON 缓存 C#
提高游戏开发效率之配置表生成工具
提高游戏开发效率之配置表生成工具
622 1
提高游戏开发效率之配置表生成工具
|
前端开发 区块链
合成游戏看广告视频盒子系统开发方案逻辑/详细案例/功能设计/需求步骤/规则项目/源码说明
在Solidity中,与外部合约交互可以通过调用函数来完成。这些函数可以是在Solidity合约中定义的函数,也可以是在外部合约中定义的函数。调用外部合约函数需要知道合约的地址和函数的签名。
游戏辅助 -- 获取人物属性代码编写
游戏辅助 -- 获取人物属性代码编写
152 0
游戏辅助 -- 获取人物属性代码编写