游戏控制双开的解决办法

发布时间:2012-01-09 11:26:16

全面分析游戏防止多开的原理,与游戏实现多开的方法。进程隐藏,窗口标题修改,端口隐藏,多个游戏目录,多个操作系统账号,互斥体,内存映射文件,DLL全局共享等方法实现游戏多开。 研究游戏多开已经有一年多的时间了,其实要实现游戏多开也不是一件很难的事情,只要大家懂得游戏防止多开的原理,然后根据其对应游戏多开的方法便可以做出游戏多开器来了。下面为大家总结一下游戏多开的原理与方法: 用了一年的时间换来了这篇游戏多开的文章: 本帖隐藏的内容 全面分析游戏防止多开的原理,与游戏实现多开的方法。进程隐藏,窗口标题修改,端口隐藏,多个游戏目录,多个操作系统账号,互斥体,内存映射文件,DLL全局共享等方法实现游戏多开。 研究游戏多开已经有一年多的时间了,其实要实现游戏多开也不是一件很难的事情,只要大家懂得游戏防止多开的原理,然后根据其对应游戏多开的方法便可以做出游戏多开器来了。下面为大家总结一下游戏多开的原理与方法: 用了一年的时间换来了这篇游戏多开的文章,如果大家需要转发的,请标明出处:小鱼工作室 http://www.lsa16.com/,谢谢。 文章来源于:小鱼工作室 http://www.lsa16.com 第一,进程隐藏 部分游戏通过探测游戏客户端进程是否已经存在来防止重复打开。 游戏多开的办法为启动一个游戏客户端后,将该游戏的所有启动的进程全部隐藏。 文章来源于:小鱼工作室 http://www.lsa16.com 第二,窗口标题修改(使用FindWindow API函数) 部分游戏通过探测游戏客户端的窗口是否已经存在来防止重复打开。 游戏多开的办法为将游戏的窗口修改为任意字符。 文章来源于:小鱼工作室 http://www.lsa16.com 第三,端口隐藏 部分游戏通过默认打开TCP或者UDP端口监听,开第二个游戏的时候会打开端口失败从而判断游戏是否多开。 游戏多开的方法为此类需要采用netstat –a –n –o 命令查看端口即可实现游戏多开。 文章来源于:小鱼工作室 http://www.lsa16.com 第四,多个游戏目录 部分游戏通过独占文件访问来防止重复打开。 游戏多开的方法为复制游戏客户端到另外的文件夹,在另外的文件夹打开即可。 文章来源于:小鱼工作室 http://www.lsa16.com 第五,多个操作系统账号(仅限XP系统) 部分游戏通过限制一个用户只能打开一个游戏来防止重复打开。 游戏多开的方法为在系统账号里面多建立账号,一个游戏使用一个账号。方法如下: 1、打开控制面版→用户帐户→创建一个新帐户→输入新帐户名(下一步)→创建帐户; 2、然后到桌面的游戏快捷图标上右键到[属性] 选[高级] 把里面[ 以其他用户身份运行]这个选项勾上 开第2个程序的时候记得用你新建的用户进就可以了,省的老去切换用户了。 文章来源于:小鱼工作室 http://www.lsa16.com 第六,互斥体。 部分游戏通过互斥对象/信号量/事件等线程同步对象来确定程序是否已经运行。最常用的函数如:CreateMutexA。 1、首先创建一个互斥体,CreateMutex函数,第一个参数可以设置为NULL,第二个参数必须设置为false,第三个参数表示互斥体的名称,这个名称最好有一些特殊标识以防止与其他应用程序冲突,比如程序名+时间。 2、使用GetLastError()函数判断错误信息是否为ERROR_ALREADY_EXISTS,如果是,则表示程序已经启动。 游戏多开的方法有二种,一为发现互斥体,然后关闭互斥体即可实现多开。二为APIHOOK,接收到错误信息时,加重置命令(置错误码=0)即可。 文章来源于:小鱼工作室 http://www.lsa16.com 第七,内存映射文件(File Mapping) 部分游戏通过把程序实例信息放到跨进程的内存映射文件中,防止游戏多开。 游戏多开的方法为拦阻该函数,不让它命名内核文件即可实现多开。 文章来源于:小鱼工作室 http://www.lsa16.com 第八,DLL全局共享 DLL全局共享区在映射到各个进程的地址空间时仅被初始化一次,且是在第一次被windows加载时,所以利用该区数据就能对程序进行多开限制。 游戏多开的方法为DLL劫持让游戏一开始运行就加载你的DLL,再转到原来的dll上就可以实现多开了。 文章来源于:小鱼工作室 http://www.lsa16.com 第九,使用公共文件 程序启动时,在一个公共目录(比如C:\或者Temp目录)中创建一个公共文件,并将此文件设置为不共享读写。第二个程序启动时,也打开此文件,如果打开成功,则表示程序未启动过,否则表示程序已经启动。 游戏多开的方法为:手动设置多开,比如:设定文件访问权限,不允许此程序在公共目录创建文件等。 文章来源于:小鱼工作室 http://www.lsa16.com 第十,Mac地址验证 登陆服务器时,获取本机mac地址,发送至服务器端,服务端进行mac地址验证,如果mac地址重复登陆,则不允许同服务器进行消息传递。 多开游戏的多法为:使用超级兔子等软件修改mac地址实现多开,针对此情况,本人也写了一个修改Mac地址的小工具,大家可以在网站下载。 文章来源于:小鱼工作室 http://www.lsa16.com 第十一,查看网络连接 获取本机所有网络连接,使用GetTcpTable获取TCP连接,使用GetUdpTable获取UDP连接,检查是否有连接到服务器IP和端口号的连接,如果有,表示程序已经启动,否则程序未启动。 多开游戏的方法为:挂系统钩子,导致GetTcpTable函数失败实现多 开。 文章来源于:小鱼工作室 http://www.lsa16.com 游戏防止多开的方法有时候并不是只用一个方法的,多数游戏都会用多种方法一起来防止多开的,只要大家都懂得这几个游戏多开的原理,灵活运行,一个一个分析排查,基本上都能解决各种游戏多开了,如果大家还有什么更好的方法,欢迎交流一下。 文章来源于:小鱼工作室 http://www.lsa16.com 下次跟大家讲一下什么各主流游戏所对应的防多开的方法,请大家继续关注,谢谢。小鱼工作室官网:http://www.lsa16.com/ HRESULT = 0x00000000 第一步:卸载旧的wincap 删除下面的文件即可: c:\windows\system32\Packet.dll c:\windows\system32\drivers/npf.sys c:\windows\system32\WanPacket.dll c:\windows\system32\wpcap.dll c:\windows\system32\pthreadVC.dll 其实只删除了packet.dll和WANPACKET.DLL就可以正常安装新wincap协议了。 为什么以上文件删除不掉? 答: 怎么卸载 wincap? 为什么卸载不了wincap? 第二步:安装新wincap协议 新wincap协议下载地址:WinPcap_4_0_2.zip 下载 第三步:安装p2p终结者软件 第一步是关键,做好第一步就不会出现“网卡尚未初始化”了。

游戏控制双开的解决办法

相关推荐