如何软件或程序
(2009-11-18 13:56:26)
转载
第一种方法:
直接修改源二进制的代码,不要紧张,也不要被吓倒,很简单的。这里需要用到一个二进制代码查看
器,如果你没有,我推荐你用一个名字为Ultra Edit的编辑器,相信你已经用过这个编辑器,(没有用过
?没有用过也不要紧,往下看!)这个软件比Windows自带的记事本的功能强大许多,用法上倒没有什么
复杂的地方,至于具体好在哪里,我就不说了,呵呵,可以自己看看专门介绍它的软件。比如说,我们要
一个英文软件,就比如Turbo C吧,把菜单中的“File”成中文的“文件”。用此编辑器打
开TC的可执行文件tc.exe,当然啦,在做这之前,你要先备份好你要操作的文件,免得到时候没有成
功,倒弄坏了文件,回不来了。打开以后,就可以看到它的原二进制代码文件。这时候,你选择查功能
。从二进制中查到“file”,倒后,将它修改成“文件”,然后关闭,执行这个文件,看看是不是已
经了。当然,这次你到的不一定就是你要的菜单,不一定会成功。这就需要反复实验了。
这类方法比较累,并且也不一定准确。这种方法现在也基本没有人使用了。
第二种方法:
这种方法是比较简单的一种,但这种方法只能适用于带有语言选择的软件,这样的软件不是很多,只
能是偶尔逮着一个,方法很简单,到它的语言选择文件夹,里面会有各个语言的选择文件,比如
FlashGet的language目录下面有三十几个国家的语言版本。这里面已经有中国的了,假如你想新建一个的
话,则也可以用记事本按照它的格式建立一个语言版本。提供给大家的一个思路就是将它的原语言版本复
制一个后,用记事本打开,然后按照它的格式修改,将它的内容换成你的内容,注意要一行一行地换,如
果你把两行弄到一行去了,这就可能会产生错误了。换完后,你也就已经了这个软件了。
这种方法用途不是很大,一般的多语言版本的程序都有中文的语言版本,不需要你的了。
第三种方法:
好的方法当然留在最后讲,这种方法是者们经常用的一种,那就是修改文件的资源文件。我们知
道,用VC和DEPHI编译成的软件都有资源文件。高手呢,就是打开VC,直接修改内核,而我们嘛,就不必
掌握这些复杂的方法了,这里给大家介绍一个简单的方法,用eXeScope软件修改,特别的简单。(没有听
说过?那没有关系,网络学院里面有教程的)像这类的软件还有很多,不过这个历史比较长,使用也非常
的简单。就给大家介绍它了。比如我们要OICQ,当然这本来就是中文版了,不需要,没有关系,
这里只是给大家演示一下的过程而已。(要详细了解eXeScope,有专门的文章介绍)
启动eXeScope,选择文件菜单,再选择打开,打开QQ的可执行文件。这时候左边的资源栏目里面就会
出现该文件的全部资源,包括什么头部文件,导入的动态连接库,以及它所用到的资源文件。而资源文件
,就是我们时要终点修改的内容。从资源中间选择菜单(一般就是菜单和对话框)当菜单栏
目展开以后,你可以看到右边的栏目里面有该菜单的全部内容了,这时候,只需要你自己改动就可以了,
将各个菜单的名字都改成你所要的名字就可以了,比如说要是“File”,你讲它改成“文件”就可以了。
注意的是“&”这个符号,编过程序的人应该知道,这个是不能动的,如果你不知道意思,只要记住,这
个符号的意义是:这个符号后面紧跟的字母是这个菜单的快捷键,就像记事本的菜单“文件(F)”那么这
个F就是快捷键,最好不要删除掉。比如说有个菜单为:“&Edit”,那么你换的时候,就不能把快捷键去
掉,把它写成“(&E)编辑”,就可以了。这是一个要注意的地方。
还包括对话框,同样从左边资源树中点开对话框,从右边就可以看到各个具体的标签与空间
的名称了,只需要将各控件显示的文字改过来就可以了,按下F8键,就可以可视化地进行修改了。将修改
后的文件保存就可以了(在编辑菜单中有“保存修改”项)。你运行一下你刚才修改过的文件,可以看到
unicode码和ascii码区别修改后的效果了。
当然啦,eXeScope的功能远不止这一些,但是非常好的一个功能。*_*
软件要注意的几点是:
1. 前的备份,如果失败,还可以还原回来。切记!
2. 软件的时候,最好就不要做别的事情了,因为我们都是刚学的人,有可能某个错误,而
使软件运行后死机,如果你别的文档没有存盘,可不要说我没有预先通知你了。呵呵。
3. 习惯问题,为了软件的通用性,一般都把“File”成“文件”,把“Edit”成“编辑”
,最好遵守一下这个规则。
4. 软件版权问题,还是尊纪守法的好,打官司了,不要说是我害了你哟。
希望上面的方法会对大家有一点帮助
一、在前面要说的
现在对于S60软件有兴趣的人越来越多了,这对于我们中国人来说是个非常好的现象,如今的软件绝大多数是英文的,虽然用起来也不是很费力(那证明咱们有一定的英文知识水平:)但是英文水平再高也没有看着咱们自己的母语舒服啊,所以说是一项必然要做的工作。
在这里讲的是难度相对较高的ASCII码软件的,Unicode码的在此就不多说了。
二、关于ASCII
现在软件中的字符串大致分为两种:Unicode码&ASCII码,在Unicode码中一个符号、一个英文字母和一个汉字都是占用2个字节,而在ASCII编码中一个符号和一个英文字母只占用1个字节,而一个汉字仍然要占用2个字节,正由于这一点的不同,现在使用ASCII码的英文软件渐渐多起来,因为ASCII码能让软件的体积更小开发起来更方便。
三、ASCII码的原理
先用Unmakesis工具把.sis软件解压,我们要的资源基本都在解压后的.rsc&.app这两种文件中,也有可能在其他文件当中,那要视软件而定,而ASCII编码的基本存在于.rsc文件中。
用16进制编辑工具Hex WorkShop打开.rsc的文件,如图一所示则为ASCII编码的,如图二所示则为unicode编码的,相信大家能有所区别
下面说一下的原理:
如图所示:“setting”的ASCII字符串为
08 08 53 65 74 74 69 6E 67 73
其中第一个08表示此字符串一共有8个字符
其中第二个08表示此字符串一共有8个字节
其中第三个53在ASCII码中表示英文字母“s”
其中第三个65在ASCII码中表示英文字母“e”
其中第三个74在ASCII码中表示英文字母“t”
...
那么如图把“setting”成中文“设置”的ASCII码是:
03 08 0F 8B BE 7F 6E 00 20 E0
其中第一个04表示此字符串一共有3个字符(“设置”+“一个空格”一共是3个字符)
其中第二个08表示此字符串一共有8个字节
其中第三个0F表示在此之后为Unicode字符串
其中第四、五个8B BE在Unicode码中表示汉字“设”
其中第六、七个7F 6E在Unicode码中表示汉字“置”
其中第八、九个00 20在Unicode码中表示为“空格”
最后一个E0代表在此之后为ASCII码,如果字符串到此为止,那么这个E0也可以写成00
ASCII码的大致原理就是这样,当然例外的情况还有很多,那要视情况而定。
如“Help”的ASCII码字符串为:
04 04 48 65 6C 70
其分析方法如上,如果成“帮助”的ASCII编码为:
02 05 0F 5E 2E 52 A9
这时你会发现后的字符串比原来的多出一个字节,如果这样后会导致程序错误,那么该如何解决呢?这里有一个最常用也是最简便的一个方法:那就是把其它字符串没有用到的多出来的字节剪切到缺少字节的地方
刚才那个“setting”后的字符串:
08 0F 8B BE 7F 6E 00 20 00
这里的结尾出多出个空格00 20和一个没用的空字节00,等于一共多出3个,哈哈,那就不客气了,拿来一个字节00用先!把00剪切到“Help”的字符串后面就成为:
04 48 65 6C 70 00
这样回过头来再成“帮助”:
05 0F 5E 2E 52 A9
字符串就一样长了哦:)
你从人家“setting”那里剪切了一个字节,那么千万别忘了把它的字节数改正过来否则会导致程序错误,改过后“设置”的ASCII字符串应为
03 07 0F 8B BE 7F 6E 00 20
注意这种互借字节的方法只能用在软件选项中的同级目录中,如图中的“帮助”可以从“设置”中借字节,也可以从“控制”中借,不能从子目录“选择时间”中借!!总之在同一目录下有多余字节的地方借就可以了
四、的具体操作
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论