当前位置: 首页 > news >正文

中国做视频网站有哪些内容百度网站建设多少钱

中国做视频网站有哪些内容,百度网站建设多少钱,网站开发总结报告,代理网站建设公司内容参考于#xff1a;易道云信息技术研究院VIP课 上一个内容#xff1a;游戏底层功能对接类GameProc的实现 码云地址#xff08;master 分支#xff09;#xff1a;https://gitee.com/dye_your_fingers/titan 码云版本号#xff1a;44c54d30370d3621c1e9ec3d7fa1e2a0…内容参考于易道云信息技术研究院VIP课 上一个内容游戏底层功能对接类GameProc的实现 码云地址master 分支https://gitee.com/dye_your_fingers/titan 码云版本号44c54d30370d3621c1e9ec3d7fa1e2a028e773e9 代码下载地址在 titan 目录下文件名为titan-接管游戏连接服务器的操作.zip 链接https://pan.baidu.com/s/1W-JpUcGOWbSJmMdmtMzYZg 提取码q9n5 --来自百度网盘超级会员V4的分享 HOOK引擎文件名为黑兔sdk升级版.zip 链接https://pan.baidu.com/s/1IB-Zs6hi3yU8LC2f-8hIEw 提取码78h8 --来自百度网盘超级会员V4的分享 以 游戏底层功能对接类GameProc的实现 它的代码为基础进行修改 HOOK下图红框位置0x10617046通过之前分析找到的 ​ 然后在注入的时候做HOOK发现会崩溃然后发现hook的点没有被游戏加载解决办法我们在HOOK之前手动的把模块加载进入不等游戏加载了 ​ 黑兔sdk升级首先点击属性 ​ 找到下图红框位置主要时看$(htd)\indude如果下图红框位置不显示 $(htd)\indude ​ 而显示不同选项如下图红框 ​ 这时把配置这一行设置成跟下图一样就好了 ​ 下载完升级版的黑兔std头文件可能无法正常加载到项目中所以要手动加首先检查它的目录对不对如下图红框我这里是对的我的头文件就放在了那里 ​ 如果不对首先点击下图红框位置 ​ 选择头文件所在目录这样就把头文件设置好了 ​ 然后设置dll库库目录是下图红框位置手动设置方法与上方设置头文件一样 ​ 全部搞完之后选择下图重新扫描解决方案就不会报红了就算报红也能编译通过 ​ 这里补充一个东西就是当执行了黑兔SDK但是在创建项目的时候下图红框里的东西不存在 ​ 首先不打开项目启动 Visual Studio 然后选择选项 ​ 然后看下图红框里的目录 ​ 查看目录中是否有下图红框里的两个文件如果没有就复制到上图红框目录下 ​ 如下图 ​ GameProc.cpp文件的修改新加 _OnConnect函数修改了 InitInterface函数、LoadBase函数 #include pch.h #include GameProc.h #include extern_all.h// typedef bool(GameWinSock::* U)(char*, unsigned);bool _OnConnect(HOOKREFS2) {/*根据虚函数表做HOOK的操作截取 ecx 获取 winsock 的值(指针)*/unsigned* vtable (unsigned*)_EDX;//WinSock (GameWinSock *)_ECX;/*联合体的特点是共用一个内存由于 GameWinSock::OnConnect 的 OnConnect函数是 GameWinSock类的成员函数直接 vtable[0x34 / 4] (unsigned)GameWinSock::OnConnect; 这样写语法不通过所以使用联合体让语法通过*/union {unsigned value;bool(GameWinSock::* _proc)(char*, unsigned);} vproc;/*vproc._proc GameWinSock::OnConnect; 这一句是把我们自己写的调用connect函数的地址的出来*/ vproc._proc GameWinSock::OnConnect; /*InitClassProc函数里做的是给指针赋值的操作InitClassProc(GameWinSock::_OnConnect, vtable[0x34/4]);这一句的意思是把GameWinSock类里的_OnConnect变量的值赋值成vtable[0x34/4]这个 vtable[0x34/4] 是虚表里的函数vtable[0x34/4]是游戏中调用connect函数的函数地址经过之前的分析调用connect是先调用了虚表中的一个函数然后从这个函数中调用了connect函数*/InitClassProc(GameWinSock::_OnConnect, vtable[0x34/4]);CString str;str.Format(Lvtable%X, vtable[0x34 / 4]);AfxMessageBox(str);DWORD oldPro,backProc;VirtualProtect(vtable, 0x100, PAGE_EXECUTE_READWRITE, oldPro);vtable[0x34 / 4] vproc.value;VirtualProtect(vtable, 0x100, oldPro, backProc);return true; }GameProc::GameProc() {hooker new htd::hook::htdHook2();Init();InitInterface(); }void GameProc::LoadBase() {LoadLibraryA(fxnet2.dll); }void GameProc::Init() { }void GameProc::InitInterface() {LoadBase();MessageBoxA(0, 1, 1, MB_OK);hooker-SetHook((LPVOID)0x10617046, 0x1, _OnConnect, 0, true); }新加GameWinSock.h文件 #pragma once class GameWinSock {typedef bool(GameWinSock::* PROC)(char*, unsigned); public:static PROC _OnConnect;bool OnConnect(char* ip, unsigned port); }; 新加GameWinSock.cpp文件 #include pch.h #include GameWinSock.h #include extern_all.hGameWinSock::PROC GameWinSock::_OnConnect{}; // 这个函数拦截了游戏的连接 bool GameWinSock::OnConnect(char* ip, unsigned port) {// this是ecxHOOK的点已经有ecx了WinSock this;MessageBoxA(0, ip, ip, MB_OK);bool b (this-*_OnConnect)(ip, port);// 下方注释的代码时为了防止多次注入导致虚函数地址不恢复问题导致死循环通过一次性HOOK也能解决/*unsigned* vtable (unsigned*)this;vtable (unsigned*)vtable[0];union {unsigned value;bool(GameWinSock::* _proc)(char*, unsigned);} vproc;vproc._proc _OnConnect;DWORD oldPro, backProc;VirtualProtect(vtable, 0x100, PAGE_EXECUTE_READWRITE, oldPro);vtable[0x34 / 4] vproc.value;VirtualProtect(vtable, 0x100, oldPro, backProc);*/return b; }htdMfcDll.cpp文件的修改修改了 InitInstance函数 // htdMfcDll.cpp: 定义 DLL 的初始化例程。这是一个MFC的dll //#include pch.h #include framework.h #include htdMfcDll.h #include extern_all.h#ifdef _DEBUG #define new DEBUG_NEW #endif// 注释掉下方宏以入口点注入的方式注入 // #define WNDHOOK #ifdef WNDHOOK typedef struct htdDll {HHOOK keyHook;unsigned KbdProc;unsigned SetDll;}*PHtdDll; void htdSetDll(htdDll hDll); htdDll mDll; #endifBEGIN_MESSAGE_MAP(ChtdMfcDllApp, CWinApp) END_MESSAGE_MAP()// ChtdMfcDllApp 构造ChtdMfcDllApp::ChtdMfcDllApp() {}ChtdMfcDllApp theApp; ChtdMfcDllApp* PtheApp;HHOOK keyHook; LRESULT CALLBACK KeyCallBack(int nCode, WPARAM w, LPARAM l);BOOL ChtdMfcDllApp::InitInstance() {CWinApp::InitInstance();PtheApp this; #ifdef WNDHOOKmDll.KbdProc (DWORD)(KeyCallBack);mDll.SetDll 0; #elsekeyHook SetWindowsHook(WH_KEYBOARD, KeyCallBack);// 代码一开始在这注册一个键盘事件的钩子 #endifPGameProc new GameProc();return TRUE; }// 钩子处理事件 LRESULT CALLBACK KeyCallBack(int nCode, WPARAM w, LPARAM l) {if (nCode 0){if ((l (1 31)) 0){switch (w){case VK_HOME:if (PtheApp-wndMain NULL){PtheApp-wndMain new CUI();PtheApp-wndMain-Create(IDD_MAIN);}PtheApp-wndMain-ShowWindow(TRUE);break;}}}return CallNextHookEx(keyHook, nCode, w, l); } #ifdef WNDHOOK void htdInit(htdDll* hDll) {hDll-KbdProc mDll.KbdProc;hDll-keyHook mDll.keyHook;hDll-SetDll mDll.SetDll; }void htdSetDll(htdDll hDll) {mDll hDll; } #else void htdInit() { } #endif 新加extern_all.h文件 /*此文件是用来存放全局变量、全局函数通用函数 */ #pragma once #include GameWinSock.h #include GameProc.hextern GameWinSock* WinSock; extern GameProc* PGameProc; extern void InitClassProc(LPVOID proc_addr, unsigned value); 新加extern_all.cpp文件 /*此文件是用来存放全局变量、全局函数通用函数 */ #include pch.h #include extern_all.h GameWinSock* WinSock nullptr; GameProc* PGameProc nullptr;void InitClassProc(LPVOID proc_addr, unsigned value) {unsigned* writer (unsigned*)proc_addr;writer[0] value; }
http://www.pierceye.com/news/448391/

相关文章:

  • 乐清市住房和城乡建设规划局网站专业做家居的网站
  • 做3d打印网站苏州建设工程人才招聘网信息网站
  • 网站建设丂金手指科杰wordpress中logo大小
  • 微餐饮网站建设被老板抓到用公司产品做自己的网站
  • 软件公司网站模板下载定制搭建网站
  • 网站建设实训报告要求怎么做公司门户网站
  • 深圳规划建设局网站wordpress改变访问目录
  • dw怎么做购物网站o2o平台都有哪些
  • 阿里云备案多个网站吗应用商店下载app软件
  • 响应式网站手机端尺寸网站开发培训心得
  • 徐州手机网站开发公司电话江苏五星建设网站
  • 网站建设全包广做短视频素材哪里找
  • 做网站为什么每年都要续费企业官网建站步骤
  • 培训行业门户网站建设方案专业网站运营制作
  • 百度网站两两学一做心得体会江苏专业网站建设费用
  • 做企业网站的架构图网站上的销售怎么做
  • 网站开发思维导图内容淘宝客在百度推广网站么做
  • 国外美容网站crm开发
  • 辽宁建设资质申报网站wordpress提示插件安装
  • 做网站用什么软件语言wordpress绑定域名后乱码
  • 网站建设邀请函郑州网站搭建的公司
  • 网站制作论文优帮云广州网站设计首选柚米
  • 唐山建设厅官方网站我有一个网站怎么做外贸
  • 荣成城市规划建设局网站宁晋网站开发
  • 福州电子商务网站手机触屏版网站开发
  • 佛山网站建设骏域开发公司综合部内部管理章程
  • 网站建设 迅雷下载西安建设工程信息网网上招投标
  • 浅析个人网站的设计论文二本网络工程就业前景
  • 网站没有做301的后果是什么苏州工业园区两学一做教育网站
  • 品牌网站建设定位湖南做网站的公司有哪些