- ·上一篇文章:在Windows 7中开启梦幻桌面的方法
- ·下一篇文章:windows7 7200可能会放出(看图和下载地址)
破译window7 7106官方中文版乱码的“达芬奇密码”(全面解决乱码)
破译7106官方中文版乱码的“达芬奇密码”之一:理论篇:
先看看7106官文中文版的乱码情况,比如计算器(calc.exe.mui)的菜单:
居然有10处之多的乱码。。。但每个乱码都不一样,说明是有规律的!
初步分析了一下,这些乱码都不是:ANSI,Unicode,UniBigEnd,UTF-8,UTF-7
用UE比较了一下,貌似与UTF-8有些关联,难道是微软自创的编码?
初步分析,乱码长度固定为8!且不管哪儿出现的乱码,长度均固定为8个ASCII字符。
这样就应该可以理解了:这个乱码,肯定不是编码!而是“特征码”。
继续查找这些特征码,发现全部都是唯一的,应该是正式版出来时候做为“标识”类似的东西。那么通过查找特征码来汉化暂时不能实现了(因为有多少个没有汉化的字串,就有多少个特征码)。
于是本人继续研究了一会儿。。。发现了这里面的“达芬奇密码”呢,呵呵
我从基础介绍起先:
汉字的编码方案,现在一般有GB2312和GBK两种.
GB2312和GBK每一个汉字由2个字节组成,这2个字节的ASCII码大小分别是:
gb2312:
high8 = 0xa1-->0xfe (Dec: 161 --> 254)
low8 = 0xa1-->0xfe (Dec: 161 --> 254)
gbk:
high8 = 0x80-->0xfe (Dec: 128 --> 254)
low8 = 0x40-->0xfe (Dec: 64 --> 254)
high8表示高8位, low8表示低8位.
学过计算机基础的同志都知道:低位在前 高位在后
举个例子来说:
“查看”的“查”汉字,ASCII码为:
B2 E9
high8 : E9 (233)
low8 : B2 (178)
很显然这是一个gb2312编码的汉字!
而calc.exe.mui的“乱码”,其中第一条为:
龻䶮孱侢&View
以第一个字符"龻"为例,ASCII码为:
FE A0
high8 : A0 (160)
low8 : FE (254)
很显然,这不是一个gb2312编码的汉字!而且按以上编码规则,可以肯定是gbk编码的字符!
而接下来的三个乱码,应该也是同样的。可以验证:
䶮: FE 9F
孱: E5 EE
侢: 81 FE
这样处理思路就有了:
1.遍历简体中文资源目录的所有*.mui文件.
2.分别打开*.mui的所有资源,只要最前面8个字符是连续的4个非gb2312编码,而且是gbk编码的字符,那这个肯定就是我们要找的字符串。
(回deepxw :昨晚没看仔细,的确前8个字符中有可能有gb2312汉字。但是我发现还是可以这样判断:
前8个字符中带有1个以上gbk编码字符和3个以下的gb2312汉字,而第9个字符是英文(ASCII<127),那这条字符串是乱码的。
相关资讯
- › 巧妙解决Windows 7 安装软件乱码的问题
- › windows 7 7127 x64 完整去乱码包 - 傻瓜安装版
- › 最新Windows7 7127/7100RC完美汉化替换492个乱码补丁
- › AMD 9.5版催化剂官方正式版 for window7
- › win7 RC中文乱码的另类解决方法,适合解决部分软件乱
- › 3步解决window7开启梦幻桌面后,桌面图标文字变透明问
- › 解决极品飞车12在window7下黑屏卡死问题
- › window7 RC电脑没有声音解决方法
- › Window7 7100 RC 官方汉化包安装方法
- › window7 7100 X64可以正常运行AION(永恒之塔)