helloflo提问:点了编译后一直就显示“编译中-请等待”,就没反应了…
小编推荐答案:Halo的编译好像并不是将*.java源代码转换成*.class的过程,而是指Halo直接修改收费代码的过程(直接修改*.class,不过要通过preverify). Halo采用补丁式破解,跳过系统的MessageConnection接口,使用自定义的XConnection接口,而在这个自定义的接口中什么也不做(而不是像系统接口那样发送短信),从而达到破解目的. 那么Halo如何跳过系统接口呢,其实这就是编译阶段要做的事,大体上就是遇到调用MessageConnection的代码就将其替换为XConnection,当然,实际上比这复杂一些. 现在再来说一说Halo对于短信收费游戏破解失效的问题(多见于仙掌等公司的游戏).其实他们只是抓住了Halo处理的一个小漏洞,在XConnection中,numberOfSegments()返回了0,而系统接口返回的是实际发送短信的条数,因此一旦游戏中加入了对numberOfSegments是否大于零的判断,Halo就失效了... 这样看来,让失效的Halo重新生效也不是难事.在Halo的安装目录下有一个lib文件夹,其中有个emptyapi.jar,XConnection和XMessage就在这里. 如果你懂得J2me,那么就可以将XConnection反编译,把numberOfSegments()中return 0修改为return 9之类的大于零的数,然后编译,再存回emptyapi.jar. 这样,加强版的Halo就可以投入使用了,使用方法同标准Halo.根据我所掌握的手游的反破解水平,99%的短信收费(仅限于短信)手机游戏均可被我的加强版Halo破解. 如果不懂j2me或手头没有工具,那就接着往下看吧..这种方式比较麻烦,只能针对单一游戏,一次一个,不嫌麻烦你就用吧. 在采用普通方式对短信收费手机游戏进行破解之后,将Halo重启(很重要),然后打开破解后的那款手机游戏(games文件夹下,最好copy到其他地方),在Halo的"工程管理器"中找到XConnection,右键单击,选择Edit Class,进入Class Editor,在左侧的"方法"下找到numberOfSegments函数,双击,选择[0]Code,再在右侧选择代码编辑表标签,将第一条指令(应该是iconst_0吧)改为bipush,参数还是大于零就行(最好4以上,有的游戏一次发四条短信,钱啊...).(啊?不会修改指令?右侧不是有个"修改"按钮?) 最后,"保存方法"(很重要),然后"编译","打包".OK,破解完了,麻烦吧...
======================================
提问人的追问2011-12-12 16:22
晕,在网上复制我不会自己找啊,我的情况是点编译后就显示“编译中-请等待”就一直没反映了,怎么回事?编译一个得多长时间啊!
破解工具HALO应该怎样用?
2018-03-31 21:28:39 阅读:6355+
来源:本站原创 作者:文章
热门推荐
图文推荐
Arm Tech Symposia 年度技术大会:诠释面向 AI 的三大支柱,与生态伙伴产业合作推动AI发展 高通孟樸:携手伙伴共抓5G+AI新机遇西门子2024 Realize LIVE用户大会:拥抱新质生产力,激发数智新动能AI技术赋能内容生产全链路 芒果探索“文化+科技”的下一步全国人大代表刘宏志:推动数字乡村建设、激发乡村振兴“数智力量”情人节不止214 DR钻戒将七夕情人节传至海外“E动新生 旗心共创” “航价比之王”红旗E-QM5专场团购会火热爆单“DR购买记录可删”被证实是谣言,传谣者公开道歉红旗新能源最新宠粉,E001首批盲订车主踏上“溯源之旅”5月销量成绩瞩目 新能源战略引领红旗品牌再向上