如何使用命令行在Windows 2003中更改系统区域设置

是否有任何命令行实用程序来更改Windows 2003中的系统区域设置?

没有Win32 API脚本(WMI)来切换系统区域设置。 但是,您可以使用以下命令行来执行此操作:

rundll32 shell32, Control_RunDLL intl.cpl,,/f:”c:\locale.txt”

C:\ locale.txt的内容如下所示:

 [RegionalSettings] LanguageGroup=13 SystemLocale=0401 UserLocale=0401 InputLocale=0409:00000409,0401:00000401 

(这会将系统和用户区域设置更改为阿拉伯语 – 沙特阿拉伯,并添加阿拉伯语键盘)。


采取从微软KB

我不知道严格执行此操作的命令行实用程序,但是您可以使用一小段VBScript来更改关联的registry值。 这并不像在“区域和语言选项”对话框的“常规”选项卡中更改区域设置那样简单,但它起作用。

例如,要更改设置以匹配“英语(英国)”,可以使用如下所示的内容:

 Dim WSHShell Set WSHShell = CreateObject("Wscript.Shell") WSHShell.RegWrite "HKCU\Control Panel\International\iCountry", "44", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iCurrDigits", "2", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iCurrency", "0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iDate", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iDigits", "2", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iLZero", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iMeasure", "0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iNegCurr", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iTime", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iTLZero", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\Locale", "00000809", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\s1159", "AM", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\s2359", "PM", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sCountry", "United Kingdom", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sCurrency", "£", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sDate", "/", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sDecimal", ".", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sLanguage", "ENG", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sList", ",", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sLongDate", "dd MMMM yyyy", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sShortDate", "dd/MM/yyyy", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sThousand", ",", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sTime", ":", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\DefaultBlindDialFlag", "00", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sTimeFormat", "HH:mm:ss", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iTimePrefix", "0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sMonDecimalSep", ".", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sMonThousandSep", ",", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iNegNumber", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sNativeDigits", "0123456789", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\NumShape", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iCalendarType", "1", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iFirstDayOfWeek", "0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\iFirstWeekOfYear", "0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sGrouping", "3;0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sMonGrouping", "3;0", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sPositiveSign", "", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\sNegativeSign", "-", "REG_SZ" WSHShell.RegWrite "HKCU\Control Panel\International\Geo\Nation", "244", "REG_SZ"