【汉化教程】--第8课:swf软件汉化技术
本帖最后由 呱呱生 于 2019-2-24 20:41 编辑大家好,我好像已经很久都没有来教大家汉化软件了,最近搞自媒体暂时没有时间,但我还是会抽出一点点时间提供新的汉化教程。
这次的汉化教程有一点点特别,是关于swf汉化技术,懂得一点点swf汉化技术思路的人,可能只认识用“硕思闪客精灵”汉化swf。
“硕思闪客精灵”汉化swf的思路:反编译swf→得到swf源码→编辑swf源码(汉化)→回包源码成swf
"JPEXS软件"汉化swf的思路:打开swf查找英文单词(日文)→修改需要汉化内容→保存
进入教程:
一、用JPEXS软件打开swf,通过“文本查找”快速找到日本(不会写日文就手动查找),如下图:
二、找到日文之后,通过复制日文→点击编辑,如下图:
三、在右边的框里点击“右键”→“查找”→“查找复制中的日文”,如下图:
四、由于替换的框中不能通过右键粘贴,就只能按Ctrl+V键粘贴中文,如下图:
五、最后汉化完了,就是“保存”,如下图:
六、记得还要保存一次,才能退出软件,如下图:
七、原日文版本的swf软件,如下图:
八、swf软件汉化成中文之后,如下图:
上一课【汉化教程】--第7课:NET程序资源汉化
下一课【汉化教程】--第9课:QT软件汉化初级教程
演示文件下载链接:http://pan.baidu.com/s/1mijyRWW 密码:uekb 00598C2F je short Quidam.00598C53 ;未跳转
前面分析得出修改598c2f就能解决问题,下面从dll角度入手实现修改
载入wxmsw24.dll, 在OEP下段,不对EXE进行直接修改的情况要要达到同样的目的,只能在内存中修改EXE代码,一般EXE代码段都是只读,我们
需要用API改变只读属性,让代码段可写,需要用到kernel32.dll中的VirtualProtect函数
dll代码段改为可写方便后面还原运行场景,修改dll时dll不能被其他程序占用,刚才退出OD载入
添加API VirtualProtect
在DLL末尾增加一个区段放置代码,如果Text区段空间足够可以不用这一步
101958F3|.8B7D 10 mov edi,
101958F6|.85F6 test esi,esi
101958F8|.75 09 jnz short wxmsw24.10195903
下面开始写代码
0358201E >7C801AD4kernel32.VirtualProtect
358201E 保存地址指针
Memory map, 条目 36
地址=00401000
大小=00482000 (4726784.)
03583011 51 push ecx ; wxmsw24.03583206
03583012 6A 40 push 0x40
03583014 68 00204800 push 0x482000
03583019 68 00104000 push 0x401000 ; 入口地址
0358301E FF90 18F0FFFF call dword ptr ds: ; kernel32.VirtualProtect
效果跟修改exe是一样的 向您问个问题在汉化.net程序的过程中找到了需要汉化的字符串 但是生成软件后还是显示英文 始终汉化不成功 只有一处字符串是这个样子其他字符串正常汉化成功 搜索了关键字 只存在这一处 自己动手,丰衣足食啊{:1_918:} 学习一下。 前排支持 大牛厉害 谢谢分享 学习一下。 学习了,你用的这个软件可以汉化其它软件部 {:301_997:}相当的感谢啊。么么哒 楼主有suosi石皮解补丁么 感谢楼主,正好在找这个~