标题: [系统相关] [分享]批处理版AppLocale [打印本页]
作者: caruko 时间: 2011-6-16 18:20 标题: [分享]批处理版AppLocale
本帖最后由 caruko 于 2011-6-16 21:04 编辑
经常接触 日、韩、台等非简体中文文档的人,或者经常玩国外非Unicode编码的游戏的人,一定知道AppLocale这个小程序,该程序可以以指定的语言运行非Unicode程序。
假如一个文本文件采用BIG5编码,系统当前的ANSI代码页是GBK。打开这个文件,就会显示乱码。
但是使用以下BAT代码,可以无需更改“控制面板--区域”设置,也无需安装AppLocale程序。
假如要使用日语的Locale设置打开a.txt,代码如下:- @ECHO OFF
- SET AL_CS=1
- SET __COMPAT_LAYER=#ApplicationLocale
- SET ApplocaleID=0411
- start notepad.exe a.txt
复制代码
其中ApplocaleID的值是 16 进制的LCID值,LCID表如下:- 语言 LCID 16进制值
- 阿拉伯语(沙特阿拉伯) 1025 0x0401
- 中文(香港) 3076 0x0c04
- 中文(中国) 2052 0x0804
- 中文(台湾) 1028 0x0404
- 克罗地亚语 1050 0x041A
- 捷克语 1029 0x0405
- 丹麦语 1030 0x0406
- 荷兰语(标准) 1043 0x0413
- 英语(英国) 1033 0x0409
- 爱沙尼亚 1061 0x0425
- 芬兰 1035 0x040B
- 法国(标准) 1036 0x040C
- 德语(标准)1031 0x0407
- 希腊 1032 0x0408
- 希伯莱语 1037 0x040D
- 匈牙利语 1038 0x040E
- 意大利语(标准) 1040 0x0410
- 日语 1041 0x0411
- 韩语 1042 0x0412
- 拉脱维亚语 1062 0x0426
- 立陶宛语 1063 0x0427
- 挪威语(博克马尔语) 1044 0x0414
- 波兰语 1045 0x0415
- 葡萄牙语(巴西) 1046 0x0416
- 葡萄牙语(葡萄牙) 2070 0x0816
- 罗马尼亚语 1048 0x0418
- 俄语 1049 0x0419
- 斯洛伐克语 1051 0x041B
- 斯洛文尼亚语 1060 0x0424
- 西班牙语(现代风格) 3082 0x0C0A
- 瑞典语 1053 0x041D
- 泰语 1054 0x041E
- 土耳其语 1055 0x041F
复制代码
作者: qzwqzw 时间: 2011-6-16 19:44
在以下链接中看到了类似的内容
谈谈Windows程序中的字符编码
http://www.fmddlmyy.cn/text7.html
可惜在我的环境下始终无法测试成功
不知道楼主测试过结果如何?
作者: user_ 时间: 2011-6-16 20:00
貌似链接失效
“Bad Request (Invalid Hostname)”
作者: 523066680 时间: 2011-6-16 20:03
在寻找绝版游戏的5年时间里(不知道游戏名称,惨),谷歌上找到了一个伙伴也在搜,跟他探讨关键词,
后来用游戏中的三个物品去搜,搜到了答案。
结果日文版的,他告诉我applocale可以转中文
(这个过程NB不…… 五年,一个读书时玩的角色扮演游戏,《复活邪神2》)
作者: qzwqzw 时间: 2011-6-16 20:33
3# user_
那是原作者的网站链接
可能是临时故障吧
不过还好
同样的标题可以Google一堆链接
可惜没有几个标注原作者的
所以我不想你的知识被湮灭
那就放开让人去转载吧
作者: caruko 时间: 2011-6-16 20:48
嗯,我的确是在一篇不知道转了多少次的文章里看到了AppLocale的汇编说明,就是改了2个环境变量。
LCID表自己搜了一下,转了一下16进制。
作者: qzwqzw 时间: 2011-6-16 20:55
那么楼主竟是测试通过了
确认不需要安装AppLocale吗?
作者: caruko 时间: 2011-6-16 21:04
好吧,经测试,的确少了一个变量。
已修改。
测试成功的代码如下:- @ECHO OFF
- SET AL_CS=1
- SET __COMPAT_LAYER=#ApplicationLocale
- SET AppLocaleID=0411
- start "" E:\仙境传说单机版\Config.exe
复制代码
作者: caruko 时间: 2011-6-16 21:10
测试图片如下:
左边的是使用 0411 日文环境,右边是简体中文环境。
作者: caruko 时间: 2011-6-16 21:22
好吧,结果发现,卸载AppLocale后,无法做到以上了。
看来,AppLocale机制可能没这么简单。
这贴删了?
作者: 523066680 时间: 2011-6-16 21:29
好吧,结果发现,卸载AppLocale后,无法做到以上了。
看来,AppLocale机制可能没这么简单。
这贴删了?
caruko 发表于 2011-6-16 21:22
留着纪念。毕竟俺花了心思回帖的……
繁体中文如何?
作者: caruko 时间: 2011-6-16 21:33
繁体中文也没问题,设为0404就可以。
只是还是必须安装AppLocale。
只是起到用BAT来代替AppLocale来启动程序。
作者: dennisle 时间: 2011-6-16 21:33
本帖最后由 dennisle 于 2011-6-16 21:34 编辑
"SET AL_CS=1"
請教樓主加了這一行有何用意?
之前玩國服跑跑卡丁車也寫過這東西,
那時沒加這一行也能正常運行!!- @echo off
- set __COMPAT_LAYER=#ApplicationLocale
- set AppLocaleID=0804
- start "" D:\Games\Gamania\PopKart\M01\KartRider.exe
复制代码
作者: Hello123World 时间: 2011-6-17 21:33
4楼在说冷笑话吗,applocale以前用来玩全面战争时用过,转字体。
作者: qzwqzw 时间: 2011-6-18 10:02
14楼也是在说冷笑话吗?
AppLocale应该是字符集编码的兼容层工具吧
主要是用来运行各种异类字符集的应用程序的
话说楼主有必要在编辑一下顶楼
把那句“也无需安装AppLocale程序”改一下
免得想我一样的朋友空高兴一场
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |