VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1104|回复: 0

[交流] MFC编程入门之四 check box--植物大战僵尸练手

[复制链接]
13_avatar_middle
最佳答案
1 
在线会员 发表于 2021-4-2 18:32:33 | 显示全部楼层 |阅读模式
本帖最后由 小白学编程 于 2021-4-2 19:11 编辑

前言:
反汇编逆向,反调试,过驱动,现在的网游都是在R0下搞得检测,只能拿单机练手了
编程-玩游戏能提高乐趣,不然太枯燥了

看着教程觉得自己懂,太简单了,敲代码时懵逼了,不知道怎么下手MFC编程入门之四  check box--植物大战僵尸练手
https://www.cctry.com/thread-297569-1-1.html   老大说这些话太精彩了,膜拜,什么时候出逆向过驱动教程就好了
vs2019新建工程
无限阳光,变态加速,自动收集,无敌不掉血,聚怪,全屏秒杀,无限金币,免CD,重叠建造,远程调用,全屏僵尸等等还有很多功能都可以练手

新学习的知识,创建一个线程监视窗口是否打开,打开功能开放,否则全是灰的,什么也干不了
//创建一条子线程,监视游戏打开或关闭
        m_monitorhread=CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)monitorThreadFunc, NULL, NULL, NULL);
       
图1:游戏没打开,功能没法使用,图3是游戏打开,功能全部开放

HWND gameHandle = FindWindow(CString("MainWindow"), CString("植物大战僵尸中文版"));

                if (gameHandle==NULL)
                {
                        g_dlg->m_seckill.SetCheck(FALSE);  //这个判断游戏复选框点击了没,游戏推出则取消,一点小细节
                        g_dlg->m_abnormal.SetCheck(FALSE);
                        g_dlg->m_immortalization.SetCheck(FALSE);
                        g_dlg->m_sunshine.SetCheck(FALSE);
                        g_dlg->m_wucd.SetCheck(FALSE);
                        g_dlg->m_gather.SetCheck(FALSE);
                        g_dlg->m_wucd.EnableWindow(FALSE);
                        g_dlg->m_immortalization.EnableWindow(FALSE);
                        g_dlg->m_gather.EnableWindow(FALSE);
                        g_dlg->m_abnormal.EnableWindow(FALSE);
                        g_dlg->m_seckill.EnableWindow(FALSE);
                        g_dlg->m_sunshine.EnableWindow(FALSE);
                }
                else
                {
                        g_dlg->m_seckill.EnableWindow(TRUE);
                        g_dlg->m_sunshine.EnableWindow(TRUE);
                       
                        //获得植物大战僵尸的进程id
                        DWORD pid;
                        GetWindowThreadProcessId(gameHandle, &pid);
                        //获得植物大战僵尸的进程句柄
                        g_processHandle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid);
                }

                if (g_dlg->m_sunshine.GetCheck())
                {
                        DWORD value = 99990;
                        WriteProcessMemory(&value, sizeof(value),0x006A9EC0,0x768,0x5560,-1);
                }
                //休息睡眠       
                Sleep(1000);
判断是否点击了复选框
     if (m_seckill.GetCheck())   
        {
               //开启无限阳光
                BYTE data[] = {0x2b,0xff,0x90,0x90};
                WriteProcessMemory(data,sizeof(data),0x0053130F);
        }
        else
        {
              //还原正常阳光
                BYTE data[] = { 0x2b,0x7c,0x24,0x20};
                WriteProcessMemory(data, sizeof(data), 0x0053130F);
        }

总结:复选框玩的也是乐趣很多 效果图如下   
MFC编程入门之四  check box--植物大战僵尸练手
MFC编程入门之四  check box--植物大战僵尸练手
MFC编程入门之四  check box--植物大战僵尸练手

评分

参与人数 1威望 +15 热心值 +3 收起 理由
75_avatar_small wl1383838438 + 15 + 3 支持原创!

查看全部评分





上一篇:MFC编程入门三(按钮(Button)单选按钮(Radio Button)复选框(Check Box)
下一篇:跟我一起从零基础自学c++从入门到放弃哈哈
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2023-3-20 23:59

Powered by CcTry.CoM

© 2009-2021 cctry.com

快速回复 返回顶部 返回列表