实现Windows non-Unicode设置批量修改

简介:

有时候我们使用英文Windows操作系统,中文文档文件名或者应用程序的中文界面会显示为乱码,这时候区域和语言选项需要做些修改来解决这样的问题。对于批量的修改,可供参考的中文文档以及脚本范例比较难找到,希望此篇能给大家特别是在外企工作的IT Pro一个参考补充。

一般来说,在控制面板Regional and Language Options的Advanced选项卡中,将Language for non-Unicode programs 选项的从默认的English (United States) 更改为Chinese RPC, 就可以解决多数的乱码问题。

image

image

以下以Windows XP为例介绍此属性批量修改方法,Vista和Win 7的思路类似。我们可以有2种修改的思路,一是在已配置好系统的PC上,根据需要进行批量修改;二是直接在镜像进行批量部署时使用sysprep.inf以修改此属性。

方法一:

对于non-Unicode这一选项的修改,可以搜索到的中文脚本范例几乎没有,而介绍的英文参考也很少,估计因为英美国家没有这样的需求,即使搜索到,有时候你会受到搜索引擎搜索的文章的误导。这正是我要分享属性修改正确方法的原因。

以下是你用non-Unicode等关键字进行搜索时在英文搜索引擎搜索到的思路,你非常有可能搜索到下面这个解答,它告诉你修改注册表里面的某几个键值。

http://www.eggheadcafe.com/software/aspnet/29208879/how-to-change-language-for-nonunicode-programs-from-registry.aspx

根据我做的non-Unicode的语言切换尝试,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls 下的确只有如上的键值被修改,对这几个键值修改后重启,也的确可以看到控制面板Regional and Language Options的Advanced选项卡中non-Unicode语言修改为了中文。但是,对于这样的修改,会有如下的潜在后果,至少我遇到了3个问题。 

1. 重启后命令行窗口变小,默认的字体Raster Fonts无法显示 
2. Oracle 有可能无法安装成功,只要一安装就自动强行重启 
3. Oracle 即使成功安装,也很可能无法卸载,一卸载就自动强行重启

虽然通过我们的问题的关键字很难搜索到相应的Microsoft KB,但的确有KB提供了参考,为节省大家查找时间,我附上了URL。

http://support.microsoft.com/kb/289125

通过这样的思路,我们就可以做个bat了,运行bat后重启就可以。再进一步,你可以通过AD开机脚本来做批量部署。

范例:nonunicode.bat

image

 代码:

 
  1. rundll32 shell32, Control_RunDLL intl.cpl,,/f:"\\192.168.0.1\Newstaff\nonunicode.txt"  
  2. @pause  

所引用的nonunicode.txt
image

代码,0804、 0409 代表简体中文和英文
 

 
  1. [RegionalSettings]  
  2.  
  3. LanguageGroup=1,2,3,4,5,9,10  
  4.  
  5. SystemLocale=00000804 
  6.  
  7. UserLocale=00000409 
  8.  
  9. InputLocale=0804:00000804,0409:00000409  

 

方法二:

我们可以直接在镜像进行批量部署时使用sysprep.inf以修改此属性。 
http://support.microsoft.com/kb/298491

image

代码相同
 

 
  1. [RegionalSettings]  
  2.  
  3. LanguageGroup=1,2,3,4,5,9,10  
  4.  
  5. SystemLocale=00000804 
  6.  
  7. UserLocale=00000409 
  8.  
  9. InputLocale=0804:00000804,0409:00000409  

参考:

XP: 
http://technet.microsoft.com/en-us/library/cc785213(WS.10).aspx

Vista/Win 7 
http://technet.microsoft.com/en-us/library/cc749272(WS.10).aspx

 




本文转自 VirtualTom 51CTO博客,原文链接http://blog.51cto.com/virtualtom/375945,如需转载请自行联系原作者

目录
相关文章
|
12月前
|
Cloud Native Go Windows
Windows 11 电脑如何设置自动开机 (Windows 11 2022H2)
Windows 11 电脑如何设置自动开机 (Windows 11 2022H2)
1976 0
|
14天前
|
存储 开发者 Windows
WINDOWS 环境变量设置方法
本文旨在帮助使用Windows电脑的开发者们为其设备配置环境变量,以更好地支持大模型应用的开发工作。文中详细介绍了三种配置方法:一是将环境变量设置为系统级变量;二是在命令行界面通过`SET`命令或`PowerShell`临时设置变量;三是借鉴MAC的方式,创建全局环境变量文件`.zshrc`进行配置。这些方法简单实用,便于根据实际需求选择适合的方式进行配置。
|
2月前
|
安全 Windows
【Azure云服务 Cloud Service】Cloud Service的实例(VM)中的服务描述Software Protection 与 Windows Defender, 如何设置Windows Defender Antivirus服务
【Azure云服务 Cloud Service】Cloud Service的实例(VM)中的服务描述Software Protection 与 Windows Defender, 如何设置Windows Defender Antivirus服务
|
1月前
|
关系型数据库 数据库 PostgreSQL
在C#中获取与设置Windows的字符编码方式
通过以上步骤,你可以在Docker环境下有效地重启PostgreSQL服务。这对于维护数据库健康、应用更新或环境配置更改后确保数据库服务正常运行至关重要。根据你的具体需求和环境设置,选择合适的方法来执行重启操作。
11 0
|
2月前
|
Python Windows 内存技术
【Azure 应用服务】Azure App Service (Windows) 使用Flask框架部署Python应用,如何在代码中访问静态文件呢?如何设置文件路径?是相对路径还是绝对路径呢?
【Azure 应用服务】Azure App Service (Windows) 使用Flask框架部署Python应用,如何在代码中访问静态文件呢?如何设置文件路径?是相对路径还是绝对路径呢?
|
2月前
|
网络协议 应用服务中间件 nginx
性能提升-如何设置Windows操作系统TIME_WAIT状态的TCP连接快速回收时间?
性能提升-如何设置Windows操作系统TIME_WAIT状态的TCP连接快速回收时间?
35 0
|
3月前
|
Windows
【Windows】 Win10下报错:该文件没有与之关联的应用来执行该操作。请安装应用,若已经安装应用,请在“默认应用设置”页面中创建关联
【Windows】 Win10下报错:该文件没有与之关联的应用来执行该操作。请安装应用,若已经安装应用,请在“默认应用设置”页面中创建关联
434 1
|
3月前
|
NoSQL Redis Windows
Windows设置Redis服务使其开机自启
Windows设置Redis服务使其开机自启
51 0
|
4月前
|
Windows
windows系统bat批处理 网络设置大全 设置静态、动态IP地址
windows系统bat批处理 网络设置大全 设置静态、动态IP地址
1060 2
|
4月前
|
应用服务中间件 Windows
Windows下CMD和Tomcat设置编码为UTF-8
解决CMD和Tomcat中文乱码问题:通过修改注册表永久设置CMD编码为UTF-8,路径 `\HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe`,修改CodePage为65001。Tomcat日志乱码时,在 `\HKEY_CURRENT_USER\Console` 下新建Tomcat项,添加DWORD值PageCode,值设为65001。
139 2