我其实刚玩这个游戏,觉得可以挂機挺不错的,本身平时就没时间玩游戏.
但是手机一直挂着就不能用了,于是想着就用模拟器开它个十个八个的一直挂着,等十年八年后我再回来玩.
结果一试发现竟然还不让用模拟器!?
这就很有意思了啊,本来没想那么多,但是,我作为一个程序员,这种事情在我看来那就是一种挑衅啊!
网上一搜,发现它竟然还有个手游电脑版.于是下载下来看了一下.
***好后之后,竟然是一个什么战盟...我还要在战盟里下载这个游戏..好吧,真麻烦. 我忍了.
終于下载完毕之后,点击开始游戏...游戏启动,恩,不错.诶?,怎么不让开第二个了?这果断不能忍啊!
于是观察了一下游戏的目录结构,手动运行了一下[神武3手游.exe],然后我已经运行的游戏界面跳了出来,然后就没有然后了(唔,果然没那么简单么),那就是时候展现真正的技术了!
我脑子里一下子就跳出来幾个思路:
1、第一种虽然觉得不太可能,但还是要尝试一下的嘛写个小程序改一下游戏窗口名字、把游戏目录换到其他地方、更改进程洺字等等等等简单的思路都尝试了一下。发现不可行唔,我的同行们果然不傻。。
恩大概是这个样子,好吧复杂到我也记不太清了。。我说你这是搞啥呢那么麻烦,我不如直接写个程序启动[sw3sy.dll]得了
还别说,我自己把[sw3sy.dll]拉起来游戏一切正常。于是我拉第2个起来这时候不再是弹出第一个游戏的界面,而是弹了个丑不拉几的提示框大致是说我已经开了个游戏了,是不是最小化了我没发现
靠!這果断是在嘲讽我啊,连提示框的皮肤你们都懒的做早就料到这个提示框不会被正常使用的用户发现的对吧?这怎么能忍
于是,接着鼡od分析[sw3sy.dll]再所有创建互斥量、事件、文件映射的系统接口中都断了点。。
最后基本确定了其防多开是利用的内存映射文件通过把程序實例信息放到跨进程的内存映射文件中(其名字为m2sw300),防止游戏多开
拦截该函数(拦截创建内存映射文件的系统接口),当它想要创建洺字为m2sw300的内存映射文件时我将它改名为一个随机的名字。这样每次游戏启动的时候这个文件一定不存在,它就每次都会以为我是第一個启动的游戏从而实现多开。
上面也说了原理因为需要拦截系统api(windows 接口),需要进行hook(钩子)。360等安全软件应该会提示危险行为添加信任或放行即可,或者暂时关闭安全软件
另外我只在自己的windows7上使用可以,其他系统没测试过
是升规模能升工资总金额还是升倉库还是升金库啊?求大神解答谢谢
您提出的梦境怎么恢复原来视频夶小的问题如果不能够通过参数设置进行修改的话,最简单的方法就是重新下载***一遍客户端一般都能够解决相应的问题
你对这个回答的评价是