自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(132)
  • 资源 (1)
  • 收藏
  • 关注

原创 郁金香2021年游戏辅助技术中级班(七)

郁金香2021年游戏辅助技术中级班(七)058-C,C++写代码HOOK分析封包数据格式A059-C,C++写代码HOOK分析封包数据格式B-detours劫持060-C,C++写代码HOOK分析封包数据格式C-过滤和格式化061-C,C++写代码HOOK分析封包数据格式D-写入配置文件062-C,C++写代码HOOK分析封包数据格式D-读取配置文件058-C,C++写代码HOOK分析封包数据格式A

2023-10-07 12:10:08 376

原创 郁金香2021年游戏辅助技术中级班(六)

如果你放弃这个任务,之后你再去接受该任务的话,那么它就是走的另一个发包了,这个我们在这类就不去分析了,我们留到下节课写分析封包的代码,通过代码来分析的话,这样比我们每次去下断点的话,要省很多很多时间,如果每次用调试器去分析的话,花的时间就比较多了,如果我们用代码把发包的数据全部收集到文件里面,再加上我们用代码来做一下条件判断和过滤,那么这样的话我们就能够更方便的收集到发包的有用信息。所以分析的时候只能在鼠标右击该NPC的时候去分析接任务的包。

2023-10-02 10:20:33 711 1

原创 郁金香2021年游戏辅助技术中级班(一)

/ CreateList.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//// 操作系统 win7 64// 编译环境 Visual Stuido 2017// 定义数据类型,可根据需要进行其他类型定义//class // 链表节点的定义// 数据域,存放数据int data1;int data2;// 链表指针 指向下一个链表节点// 链表创建函数定义int len;// 用于定义链表长度int val;// 用于存放节点数值。

2023-09-27 10:13:05 582

原创 郁金香2021年游戏辅助技术(初级班)(上)

我们看到第5个参数是rsp+20,前4个参数占0x20大小的空间,但是在x64环境下,前4个参数分别通过rcx、rdx、r8、r9来传递,为了对齐(也是为了兼容x86汇编),第5个参数通过rsp+20来传递,第6个参数通过rsp+28来传递;在x64环境下,_cdecl、_stacall和_fastcall、_vectorcall这4种调用约定,我们发现都一样,都是用rcx、rdx、r8、r9来传递参数,超出4个的参数用堆栈(rsp+20)来传递。其实它们是有区别的,区别应该就在于参数是浮点数的情况下。

2023-09-27 10:10:49 446

原创 郁金香2021年游戏辅助技术(初级班)(中)

有关函数的更多信息,请参阅 TimerProc。挂接主线程这是一个比较复杂的过程,方法有很多,现在我们能够快速用到的,可以用定时器的方法把它附加到游戏窗口所在的线程,因为游戏这个窗口界面就是运行在主线程的,所以我们可以用这种方法来挂接游戏主线程(后面的课还会讲其他挂接主线程的方法)。这个宏添加到显示窗口函数的最前面,也就是说我们在DLL中用到了MFC的窗口,那就需要把这行代码放到函数中的第一行,这个宏会做一些资源的初始化工作,我们后面在显示窗口的时候,它才能够查找到相应的资源,才能够正常的显示窗口。

2023-09-27 10:09:46 327

原创 郁金香2021年游戏辅助技术中级班(五)

右键点击NPC的时候有4个组包,释放灵魂的大概有7个组包,但是哪个是真正的释放灵魂,哪个是真正的右键点击NPC,哪一个又是真正的天使复活的指令,就需要我们下节课写代码来测试(写一个结构来组包并调用相应的CALL进行测试),当然我们现在重点分析第一次的组包,因为后面的组包可能性都是很小的,一般来说第一个的概率高达90%。而我们从上图也可以看到,角色信息里面这些身上装备也是一个一个的格子,它大概率的应该也是一个数组,类似于我们背包数组,我们下节课一起来分析这个装备数组。

2023-09-26 17:19:50 253

原创 PotPlayer播放时、拖动播放条,CPU占用率高、卡顿

确定,关闭播放器再重新打开即可;

2023-08-08 10:01:55 2941

原创 安装支持vs2019的MFC(解决MSBuild 错误 MSB8041、MSB8042)

参考链接:https://blog.csdn.net/sanqiuai/article/details/124181979。安装上述勾选内容后,即可解决MSBuild 错误 MSB8041。MSB8041:此项目需要 MFC/ATL 库。

2023-07-27 21:33:49 1385

原创 windows PE 指南(基础部分)(二)

windows PE 指南(基础部分)(二)PE文件头IMAGE_OPTIONAL_HEADER.AddressOfEntryPointSectionAlignmentFileAlignmentPE文件布局和装入后内存布局节表内容你想在PE文件(PE内存映像)里面找一个数据该怎么找?PE重定位Load Config Table如何在内存或者文件里面找着数据目录元素所对应的内容loader重定位Base Relocation Table我们来看看重定位表在文件里面长啥样我们变量的位置需不需要进行修正呢?.te

2023-07-18 15:34:53 287

原创 windows PE 指南(基础部分)(一)

常见的找不到符号的链接错误,是指链接器找不到函数名对应的可执行代码在什么地方,在源代码里面没有告诉编译器、链接器足够的信息;所以要在源代码里面,将这个函数名所在的lib文件所在位置放进去,总之这个静态库里面有这个函数的全部信息,有这个函数的可执行代码;

2023-07-09 21:36:23 892

原创 Windows_10_System_Programming_4,Jobs

奇怪的是,在这个结构中返回的进程ID被类型化为ULONG_PTR,这意味着在一个64位的进程中,每一个都是64位的。如果启用了CPU速率控制,并且既没有指定JOB_OBJECT_CPU_rate_control_WEIGHT_BASED也没有指定JOB_OBJECT_CPU _rate_control_MIN_MAX_rate,则CpuRate成员指定相对于10000的CPU限制百分比。此外,由于作业访问是间接的——如果某个进程在作业下,则可以使用“作业”选项卡——显示的作业是该进程所属的直接作业。

2023-06-13 11:00:00 684

原创 Windows_10_System_Programming_3,Processes

Windows_10_System_Programming_3,ProcessesProcessesProcess BasicsProcesses in Process ExplorerProcess CreationThe main FunctionsProcess Environment VariablesCreating ProcessesHandle InheritanceProcess Drive DirectoriesProcess (and Thread) AttributesProtecte

2023-06-12 10:00:00 506

原创 Windows_10_System_Programming_2,Objects and Handles

可以通过复制句柄(duplicating the handle)来实现这些复制操作(these copy operations)(见本章后面的 “共享内核对象”),但这是一个非平凡(非常重要)的操作,最好在隐式复制场景中避免。内核对象是引用计数的。句柄复制没有固有的限制(除了安全性)-它几乎可以在任何内核对象上工作,不管是有名字的还是没有名字的,而且它在任何时间点上都可以工作(在第3章中,我们将看到句柄继承仅在进程创建子进程时可用)。如果是,那么它就不是一个新的对象,而是现有对象的另一个句柄。

2023-06-11 09:00:00 378

原创 U盘中毒(一堆.scr扩展名的文件),文件不见了怎么办,怎么恢复隐藏文件

我们首先要打开此电脑(或我的电脑),依次点击查看-选项,打开文件夹选项,点击查看,找到隐藏文件和文件夹,点击“显示隐藏的文件,文件夹和驱动器”,并单击确定。打开u盘后,发现u盘内多了几个没见过的文件,u盘里面的文件夹变成*.scr、*.exe格式文件或快捷方式文件,不能正常打开。4、进入恢复的文件夹,如果还是有一堆.scr扩展名的文件的话,将“显示隐藏文件.cmd”复制到该文件夹内,双击运行即可。2、点击“文件”,“另存为”,在弹出的对话框中填写“显示隐藏文件.cmd”,然后点击“保存”,注意文件格式哦。

2023-05-11 23:05:04 3072 1

原创 解决播放swf视频提示“该版本过旧,不支持运行,请升级后使用”的问题

如果提示无法编辑,没有权限的话,鼠标右键这个文件,属性,安全选项卡,高级,把所有者改成Administrators,点击应用,然后重新加载权限窗口,然后点添加,选择主体Administrators,然后选中完全控制,然后一直确定,就能够编辑hosts文件了。目录下,将红色文字复制粘贴到随便打开的一个文件夹地址栏里面,回车,删除该目录下的Macromedia文件夹,仍然是建议使用Everything软件来操作,删除前留意此目录下有无重要文件。目录下的Macromedia这个目录就可以了。

2023-04-25 08:39:30 4805 3

原创 photoshop常用技巧

在滤镜列表中选择其他类型中的高反差保留选项,从打开打高反差保留界面中,我们将半径设置为四,点击确定按钮完成,之后我们再选择当前图层的情况下,在图层面板中选择图层混合模式为线性光即可。2、双击该图层,将背景层改为普通层3、选取橡皮擦工具,可选画笔主直径大点,先粗略地擦掉大部分不用的部分4、再选画笔主直径小点,把图片放大,进行精细处理。打开Photoshop,导入图片,点击上方菜单栏中的【图像】,选择【图像】下的【调整】,点击【去色】,最后,就能看到图片原本的各种颜色没有了,图片变成黑白的了。

2023-04-23 22:19:47 373

原创 头文件stdafx.h的作用(常见错误),以及如何在空项目中添加该头文件

stdafx.h 是微软自己搞的预编译机制中的一个默认文件,里面填写代码用到的h文件, 而vs在编译代码时,会把 stdafx.h 里面提到的h进行预先编译,缓存起来,当用户不更改stdafx.h 里面内容时,则不重新编译这些h,这样会让你更加高效地进行反反复复的run/debug操作。\stdafx.h”。7. 如果一个 .cpp 文件使用了预编译头文件,那么要在 .cpp 文件的最开头去包含 stdafx.h 文件,否则会跳过 #include “stdafx.h” 之前的 #include 代码。

2023-04-23 16:13:38 14367 2

原创 读取注册表中的REG_QWORD和REG_BINARY(二进制)类型数据

这里所说的项就是键key,子项就是子键subkey,键的一条属性被称为一个value(值项),最底层的子键里面的项其实就是值项value,value由名称、类型、数据类型和数据组成,这里所说的值名对应的就是值项的名称,这里所说的值数据就是值项的数据)而DigitalProductId这类二进制数据的长度也是在函数RegQueryInfoKey中获取的(切记获取的这个长度不包括结尾的空字符0,所以我们为了读取该数据分配的空间大小,要在这个长度上加1);(subkey)就是这个节点的子节点,子健也是键。

2023-04-22 18:23:46 1965

原创 对话框与子窗口控件(写给大忙人看的快速复习掌握)

我不喜欢控件这个词,因为控件这个概念有点抽象,很容易让人摸不到头脑(控件到底是什么东西,它跟窗口有什么关系呢?),我更喜欢叫它预定义的窗口类。大家还记得么,我们在Windows 程序设计应用开发(上部) 第四章 windowsSDK编程。

2023-04-14 09:45:39 651

原创 编译64位Detours(其他vs版本同理)

该方法最实用,少INCLUDE文件你搜到后,就将该文件所在的目录添加到系统环境变量INCLUDE里面,少LIB文件你就将它的目录添加到系统环境变量LIB里面,少了添啥。将上述选项中的/WX修改为/WX-,/WX 是警告被视为错误,而 /WX- 是警告不被视为错误。目录中的include目录中,这样就可以在你项目.cpp中直接引用detours.h头文件。detours.lib生成成功,并会自动将detours.h、detver.h拷贝到。在vs中编译使用了Detours库的项目时,报上述错误。

2023-03-24 17:25:07 744

原创 VC常见编译链接错误(.obj : error LNK,fatal error)

VC常见问题(.obj : error LNK2019、fatal error C1083)

2023-03-09 09:23:20 944

原创 MFC常用技巧

C、当某个api函数的 out参数能返回一个指针时,应小心谨慎处理参数 ,在win32中,可以把一个ulong变量的地址进行强制转换后传递给api函数,返回的指针就保存在 ulong变量中,但在win64中,返回的指针有64位,如果使用ulong变量的话就会破坏其他变量的内容,正确并且简单的方法是直接定义一个指针变 量,把指针变量的地址作为参数传递给api函数。另外,由于handle实质上是一个指针(void *),因此把handle转换成long或ulong等类型也是不正确的。

2023-02-10 17:03:57 1365 1

原创 vs最常用快捷键

Ctrl+J或者 Ctrl+Space 或者 Alt+Right ------自动补全或者是提示(Ctrl+Space因为被中文输入法抢占,替代的快捷键Alt+Right。Ctrl+上下键--------滚动页面(滚动编辑器,滚动代码屏幕,但不移动光标位置,让我们不使用鼠标来滚动页面,摆脱鼠标的束缚!Ctrl+Shitf+左右键--------选择整个的单词(主要用于复制某个或多个单词)Ctrl+左右键--------跳过整个的单词(不用再一个一个的跳过字母)

2023-01-17 10:16:38 4303

原创 vs未能安装此扩展 基础连接已经关闭

这是由于nuget不再支持tls1.0和1.1,猜测是tls的问题。

2023-01-15 10:10:59 2268 1

原创 驱动、MFC项目改名、代码移植技巧,复制别人项目中的界面资源以及合并项目

2、用notepad++打开.vcxproj、.vcxproj.filters文件,替换里面对应的文件名字符串;3、用notepad++打开.vcxproj项目文件,修改、标签中的文件名,搜索rc、rc2修改对应的文件名;4、用notepad++打开.rc文件,修改里面对应的.rc2文件名;5、项目中的.h和.cpp可以打开vs在里面修改文件名即可。res文件夹下的.rc2。

2023-01-06 20:20:34 1109

原创 MFC高级控件RichEdit2.0的使用

2、在对话框中添加若干编辑框和控件,按住ctrl+D键设置焦点顺序(例如你想编辑框IDC_EDIT1设置为第一个焦点,只需要第一个点这个编辑框即可,接下来的依次点就可以了);2、此方法可以实现在编辑框之间的依次切换,当遇到第一个按钮控件时(一般设置为缺省按钮),按下回车键相当于执行鼠标点击该按钮的功能。将需要被设置到焦点的控件的tab order设为1。注意:1、IDOK为对话框中的缺省按钮ID,若对话框的缺省按钮已更改,则写相对应的缺省按钮的ID号;// TODO: 在此添加专用代码和/或调用基类。

2023-01-05 11:26:41 2270

原创 Win10 21H2 19044+vs2019 WDK驱动开发,错误 MSB8040缓解Spectre 漏洞的库以及输出SXS.DLL的垃圾信息

如果出现“Spectre Mitigation”这种错误,就要了解下PIPE技术:流水线技术,比如3级流水线,避免CPU空闲,不浪费时间,但是前提是没有跳转,指令都是顺序执行的;一旦发生跳转,流水线上的指令就错了,必须要清空哪些已经在流水线上的指令,一定不能执行错误的指令,清空流水线的代价越来越大,严重影响CPU效率;在工程配置属性,常规,输出目录,编辑,宏,搜索14.2,出来的全是14.29.30133,所以可以确认,我们需要的是14.29版本。“Spectre Mitigation”缓解错误。

2022-12-25 21:23:07 1938 1

原创 MFC 错误 error C2504: “CDialogEx”: 未定义基类,以及错误error C1189

首先,下图这个framework.h非常关键,它在pch.h中也有定义,所以下图这个framework.h可以删掉,但是pch.h中的framework.h不能删除,否则必报类似CDialogEx C++ class 未定义基类的错误。原文链接:https://blog.csdn.net/m0_51911432/article/details/122816079。在MFC文件中添加资源窗口,后添加新类,随后在.h头文件中出现 CDialogEx C++ class 未定义基类错误。

2022-12-15 13:32:08 2688

原创 win7、win10关闭驱动签名,进入驱动测试模式,以及常见初级问题的解决

④ 重启系统使得②③设置生效。某些系统会屏蔽这个水印,此时可以通过命令【bcdedit /enum】确认testsigning的值是否为Yes以判断系统当前是否处于测试模式。(1)管理员权限运行cmd,输入bcdedit /set testsigning on和bcdedit /Debug on,开启测试模式和调试模式。② 输入命令【bcdedit /set testsigning on】 开启系统测试模式。方式三:批处理文件实现:管理员权限打开win7-win10驱动测试模式。

2022-12-15 10:43:30 11124 1

原创 C++Mysql8.0数据库跨平台编程实战(下)

C++Mysql8.0数据库跨平台编程实战(下)

2022-12-08 16:42:37 1042

原创 CString转float,再转十六进制,再转CString(互相转换)

MFC应用程序,添加两个编辑框,并给各编辑框添加一个变量(CString m_float、CString m_hex)。参考资料:MFC CString和十六进制互转https://blog.csdn.net/zb774095236/article/details/88795565浮点型与16进制数据的相互转换(C语言代码)https://blog.csdn.net/qq_43537721/article/details/107757766strtoul, _strtoul_l, wcstoul,

2022-12-04 22:11:39 486

原创 植物大战僵尸变态辅助开发系列教程(E语言实现和VC6实现)(下)

也就是说,不在VS编程环境的调试下运行这个程序,而是把生成的exe程序拷贝出来,直接独立运行它的时候就不能正常修改阳光值等功能,所以就需要在运行之前需要提权,获取到打开进程的权限。我们知道,种植植物的话,植物数量肯定会增加,所以思路就是找到当前植物的数量,再找到这个数量增加的关键指令,下个断点,看一下都调用了哪些函数,分析一下就可以了。第一层是个无参的CALL,内部没有返回值,肯定不是咱们种植的CALL,因为咱们如果要种植的话,肯定会有它们的一个坐标,它种在哪,植物的类型等等这些东西。

2022-11-22 20:46:10 1129

原创 C++11、17、20的内存管理-指针、智能指针和内存池从基础到实战(中)

C++内存管理-指针、智能指针和内存池从基础到实战

2022-11-22 12:00:00 775

原创 C++11、17、20的内存管理-指针、智能指针和内存池从基础到实战(上)

C++内存管理-指针、智能指针和内存池从基础到实战

2022-11-21 11:14:40 424

原创 C++socket网络编程实战http服务器(支持php)(上)

return 0;}设置项目属性,链接器、输入,ws2_32.lib;编译成功!i < 1000;}第一个参数,是用什么协议,AF_INET,就是TCP/IP协议;第二个参数,传输层用udp还是tcp,这里我们用tcp的;返回值,socket句柄的值。

2022-11-21 11:13:30 1041 1

原创 植物大战僵尸变态辅助开发系列教程(E语言实现和VC6实现)(中)

用CE找到僵尸当前的坐标,未知的数值,一移动,就搜索减少(因为坐标原点是屏幕的左上角,从右往左移动坐标x的值肯定是减少),多次搜索后把00400000小的地址都删除,选那些大的数值,类型是float,僵尸的移动是在一条线上移动,找到后给它的数值改一下来测试;在游戏开始的时候,这局僵尸都给你列出来了,有一种方法,你可以把这些僵尸的基址都遍历出来,用循环把每只僵尸的基址都遍历出来,写入冰冻状态的数值,但这样的话比较麻烦,如果僵尸特别多的话,你的程序可能会不准,或者程序有可能崩溃掉,那怎么办呢?

2022-11-20 20:46:47 1453

原创 植物大战僵尸变态辅助开发系列教程(E语言实现和VC6实现)(上)

改成-5的话,豌豆射手只会有一直吐炮弹的动作,却没有炮弹射出来,炮弹发射不出来,也就是说如果减得数值过大,炮弹还没发射出来呢,就又执行了一次攻击的间隔,这个动作还没执行完又再次发射,炮弹还没发射出来就又开始一次新的发射,就会造成炮弹发射不出来了。在游戏里面,植物能种植的时候是1,不能种植的时候是0,就是说你在种植的时候不但有一个状态的显示,它还会有一个相关的判断,如果是1的话怎么做,如果是0的话又怎么做。思路就是,要找到在建造的同时截取到种植的CALL,然后对比下函数的开头,看看有什么变化;

2022-11-20 17:00:12 1025

原创 VS2015之博大精深的MFC项目开发(二)

其实消息映射机制我们现在也都知道了,就是在BEGIN_MESSAGE_MAP和END_MESSAGE_MAP之间,将一个ID、一个消息(COMMAND、SIZE、CLOSE)与一个函数关联;或者将一个消息(ON_WM_PAINT)与一个固定的函数相关联,比如上面这个WM_PAINT消息,它就是绘图消息,它就必须和OnPaint关联,它是一消息、一函数;

2022-11-03 10:06:52 2459

原创 VS2015之博大精深的MFC项目开发(一)

not captured,就是当鼠标移出了对话框窗口客户区之外的时候,标题栏上的文字就不响应了(不响应鼠标移动消息了),离开窗口的话光标就无效了,光标在窗口内的话就响应鼠标移动消息,也就是说包含光标的窗口才能收到这个消息;the window that has captured the mouse,也就是把这个光标绑到这个窗口,离开窗口之后光标仍然有效。继续研究wParam参数,如何把按下左键拖动也能显示出来呢?

2022-10-15 22:44:07 4165 1

原创 Windows MFC 工程应用开发与框架原理完全剖析教程(下)

消息循环基础类CCmdTarget的设计

2022-09-07 07:35:13 288

windows下的emacs键盘的设置工具

将windows下编辑工具的键盘设置为emacs按键习惯 xkeymacs

2013-10-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除