网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
协议型网络游戏外挂制作之启动
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式
对,能不能得到正确的结果我就不知道了。

 

  网上有不少人问怎么在游戏中弹出外挂窗口,我已经回答的有点不耐烦了。在CB中做是最方便的事情了,但得设置好控件的属性,因为我对使用VC来编写界面不熟悉,更多的时候我都是直接使用API来编写的(我没有学习MFC的打算),所以对于喜欢VC的朋友们只能说抱歉了。

 

  对于新窗体的属性设置是最重要的,要不然莫名其妙的错误和结果让人变得神经。下面是我对dll中窗体属性的一些总结,如果你有其他不懂的地方,可以给我E-Mail或者MSN或者QQ。

 

  1、 Visible属性一定要为false,否则窗体没办法移动

  2、 FormStyle属性最好为fsNormal,但一定不要是fsMDIChild或者fsMDIForm,这两个会引起莫名其妙的错误。

  3、 如果刚开始弹不出来的话,将BorderStyle属性改为bsDialog。我在后面的教程中由于要重载TForm的函数,因此这里是不是必须为bsDialog不太清楚了,毕竟是很早以前的代码了。

 

  其他的注意点好像没有了。下面是CreateThread调用中的Thread1函数实现:

 

DWORD WINAPI Thread1(PVOID param)

{

 TwgHookForm* wgHookForm;

 wgHookForm = new TwgHookForm(NULL);

 wghandle = wgHookForm->Handle;

 /*暂时将下面的发送消息屏蔽掉,我在窗体创建之后需要窗体做一部分必要动作,所以采用发送消息的机制来了,其实并不是必需这么做的,由许刚开始编写的时候,APIHOOK中的内容都是通过Message的方式来做的,这里为了方便就通过Message来弄了,算是点历史原因吧*/

 SendMessage(wghandle, WM_USER 2, NULL, NULL);

 wgHookForm->ShowModal();

 delete wgHookForm;

 return 1;

}

 

  到现在为止应该可以在游戏中弹出外挂窗口了,我们的第一步也算完成了,外挂程序的平台到现在为止搭建完了,剩下的就是工具的制作和必要代码的编写。在下一节中我准备说一下APIHOOK的方法。

 

 

 

协议型网络游戏外挂制作之APIHOOK补遗

 

  上一节中我们说了外挂平台的搭建,我们做完了Hook.dll和wg.exe,但如何让wg.exe调用Hook.dll中的函数,可以自己查看CB的教程或者到网上查查。在这里我是在wg.exe的Hook按钮事件中添加了下面的语句来实现:

 

if(gamethreadid)

{

 if(EnableHook(gamethreadid)==false)

  ShowMessage("error");

}

 

  你可以点击Hook按钮在游戏界面出来之后,然后在游戏界面中按F12键调出外挂的窗口。

 

  昨天的尾巴完事之后,开始今天的教程。今天我想说说APIHOOK。虽然APIHOOK在大话游戏的外挂制作中不是必须的,但为了按照一般的制作流程顺序,就先将这部分加入到里面去了。

 

  使用APIHOOK的原因也很简单,游戏肯定要调用某些系统函数,使用APIHOOK可以简单的查看一些关键的信息并进行修改(就这么简单的理由?是的,我们一向再用杀牛的刀宰鸡的。。。)。

 

  Jeffrey Richter用了大量的篇幅来讲如何插入DLL和挂接API,如果你不知道Jeffrey Richter是谁的话,总该知道《Windows核心编程》的作者吧,如果不知道,我倒,系统抛出例外,你是外星人吧。我们的程序运行在用户层上,J。R提出了两种办法,一种是改写代码,我刚开始也试图用这种办法,后来发现这种办法确实存在的漏洞多多,和J。R说的一样。最后还是采用操作模块的输入节了。

 

  在查看资料的过程中,我发现J。R的代码在中文Windows 2000上并不能运行(难道是外国人用的系统和中国的不一样?),后来只好J。R的思路,重新安排了一下函数,但大部分函数都一样的。为了方便,我没有在类中捕获LoadLibraryA、LoadLibraryW、LoadLibraryExA和LoadLibraryExW,也是因为我们的外挂程序运行的时候游戏的窗口已经出来了,该加载

  • 上一篇资讯: 外挂编写完全攻略
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号