|
本帖最后由 落雪无尘 于 2020-11-16 13:27 编辑
纯源码 D3DHOOK绘制例子 简单易懂 逻辑清晰 适合学习D3DHOOK的朋友
相关的函数可以自行扩展 达到自己想要的效果
游戏里面也可以使用,Z缓冲可以达到穿透模型遮挡
另外附上CSGO注入代码(某些程序HOOK了一些函数导致无法注入,我这里给出一个解决办法)
|
线程_注入_修复NtOpenFile | 逻辑型 | | |
目标进程ID | 整数型 | | | | 要注入的DLL文件名 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 长度 | 整数型 | | | 局_内存值 | 整数型 | | | 局_进程句柄 | 整数型 | | | 局_函数地址 | 整数型 | | | 局_线程ID | 整数型 | | | NtOpenFile_函数地址 | 整数型 | | | NtOpenFile_原函数头 | 字节集 | | |
局_进程句柄 = OpenProcess (2035711, 0, 目标进程ID )如果真 (局_进程句柄 = 0 )信息框 (“打开进程失败!”, 16, , )返回 (假)
NtOpenFile_函数地址 = GetProcAddress1 (GetModuleHandleA (“ntdll”), “NtOpenFile”)NtOpenFile_原函数头 = 取空白字节集 (5 )ReadProcessMemory_字节集 (局_进程句柄, NtOpenFile_函数地址, NtOpenFile_原函数头, 5, 0 )如果真 (取字节集左边 (NtOpenFile_原函数头, 1 ) = { 233 }) ReadProcessMemory_字节集 (-1, NtOpenFile_函数地址, NtOpenFile_原函数头, 5, 0 )WriteProcessMemory_字节集 (局_进程句柄, NtOpenFile_函数地址, NtOpenFile_原函数头, 5, 0 ) 长度 = 取文本长度 (要注入的DLL文件名 )局_内存值 = VirtualAllocEx (局_进程句柄, 0, 长度, 4096, 4 )如果真 (局_内存值 = 0 )返回 (假)WriteProcessMemory_字节集 (局_进程句柄, 局_内存值, 到字节集 (要注入的DLL文件名 ), 长度, 0 )局_函数地址 = GetProcAddress1 (GetModuleHandleA (“Kernel32”), “LoadLibraryA”)局_线程ID = CreateRemoteThread (局_进程句柄, 0, 0, 局_函数地址, 局_内存值, 0, 0 )如果真 (局_线程ID = 0 )返回 (假)WaitForSingleObject (局_线程ID, 4294967295)VirtualFreeEx (局_进程句柄, 局_内存值, 0, 32768 )CloseHandle (局_线程ID )CloseHandle (局_进程句柄 )返回 (真)
D3D界面绘图
游戏D3D绘图
源码奉上:
D3Dhook_例子 -DLL - 开源.zip
(8.19 KB, 下载次数: 2002)
|
-
评分
-
参与人数 13 | 好评 +10 |
精币 +24 |
收起
理由
|
d2046
| |
+ 1 |
支持开源~!感谢分享 |
大道宽又长
| + 1 |
|
支持开源~!感谢分享 |
二一八二七零
| |
+ 1 |
新技能已get√ |
无名尸
| + 1 |
+ 1 |
大佬同一进程游戏窗口关闭再载入不绘制怎么办 |
iivbdo
| + 1 |
+ 2 |
支持开源~!感谢分享 |
mxx123
| + 1 |
+ 2 |
支持开源~!感谢分享 |
易语言资源网
| + 1 |
+ 5 |
支持开源~!感谢分享 |
陈炳强
| + 1 |
+ 2 |
支持开源~!感谢分享 |
dwcq
| + 1 |
+ 2 |
键盘左光标键,按住不放的同时连续按下右光表无效怎么写,来个列子. |
天空飞翔
| + 1 |
+ 2 |
把上图写好的也发下作参考啊 |
粉风
| + 1 |
+ 2 |
支持开源~!感谢分享 |
梁庆昌℡
| |
+ 1 |
很赞同,谢谢! |
冰点
| + 1 |
+ 3 |
支持开源~!感谢分享 |
查看全部评分
|