DISM 语言和国际服务命令行选项
国际命令可用于更改 Windows 和 Windows 预安装环境 (WinPE) 映像中的国际设置。 你还可以查询脱机或联机 Windows 映像中的现有设置。
使用部署映像维护和管理 (DISM.exe) 工具维护 Windows 映像的基本语法是:
DISM.exe {/Image:<path_to_offline_image_directory>|/Online} [dism_global_options] {servicing_option} [<servicing_argument>]
有三种类型的国际维护命令:
- Get 命令。 检索脱机映像或运行中操作系统的国际设置报告。
- Set 命令。 为脱机映像设置不同的国际设置。
- Gen-LangIni 命令。 生成在安装过程中使用的 Lang.ini 文件。
可对脱机映像使用以下国际维护选项:
DISM.exe /Image:<path_to_offline_image_directory> [/Get-Intl] [/Set-UILang|/Set-UILangFallback|/Set-SysUILang|/Set-SysLocale|Set-UserLocale|/Set-InputLocale|/Set-AllIntl|/Set-Timezone|/Set-SKUIntlDefaults|/Set-LayeredDriver] [/Gen-Langini|/Set-SetupUILang|/Distribution]
注意
在 DISM 中使用 /Mount-Image
选项之前,需要装载映像(请参阅 DISM 映像管理命令行选项)。 装载映像时为 /MountDir
参数指定的值应该用作 /Image
参数的值。
可对正在运行的操作系统使用以下国际维护选项:
DISM.exe /Online /Get-Intl
下表提供了每个国际维护选项的用法说明。 这些选项不区分大小写。
/Get-Help /?
紧接在国际维护命令行选项之后使用时,可显示有关该选项和参数的信息。 指定映像后,其他主题可能会变得可用。
示例:
Dism /image:C:\test\offline /Set-UILang /?
Dism /online /Get-intl /?
/Get-Intl
显示有关国际设置和语言的信息。
- 使用
/Online
选项可显示有关正在运行的操作系统中国际设置和语言的信息。 - 使用
/Image:<path_to_offline_image_directory>
选项可显示有关脱机映像中的国际设置和语言的信息。 - 与
/Distribution
选项结合使用时,可显示有关分发包中的国际设置和语言的信息。 不会验证分发共享中文件夹的名称。 该名称将报告为…\Langpacks<locale_name>\Lp.cab
,其中 <locale_name> 是文件夹的名称。
注意
仅报告脱机映像的用户区域设置。 该报告不包括运行中操作系统的此设置。
/Set-UILang
设置默认的系统用户界面 (UI) 语言。 如果该语言未安装在 Windows 映像中,则命令将会失败。
语法:
DISM /Set-UILang:<language_name>
<language_name>
指定要设置为默认语言的语言名称,例如 ja-JP。
注意
- 从 Windows 11 开始,DISM 设置的默认系统 UI 语言在所有版本中保持不变(家庭版除外)。 对于所有商业版,在开箱即用体验 (OOBE) 期间选择的语言会设置为系统首选 UI 语言,Windows 将以此语言显示;对于家庭版 SKU,在 OOBE 期间选择的语言将继续用作默认系统 UI 语言。
- 从 Windows 10 版本 2004 开始,如果将基于 .appx 的语言体验包 (LXP) 支持的语言作为参数传递,则该语言将设置为系统首选 UI 语言,其父语言将设置为默认系统 UI 语言。
- 在以前的版本中,此选项不支持将 UI 设置为作为 LXP 安装的语言。
示例:
Dism /image:C:\test\offline /Set-UILang:fr-FR
/Set-UILangFallback
为脱机 Windows 映像中的系统 UI 设置回退默认语言。 仅当 /Set-UILang
选项指定的语言是未完全本地化的语言时,才使用此设置。
语法:
DISM /Set-UILangFallback:<Language_Name>
<Language_Name>
指定要设置为默认回退语言的语言名称,例如en-US
。
示例:
Dism /image:C:\test\offline /Set-UILangFallBack:fr-FR
/Set-SysUILang
设置系统首选 UI 语言。 如果该语言未安装在 Windows 映像中,则命令将会失败。
语法:
/Set-SysUILang:<language_name>
<Language_Name>
指定要设置为默认回退语言的语言名称,例如en-US
。
示例:
Dism /image:C:\test\offline /Set-SysUILang:fr-FR
/Set-SysLocale
设置脱机 Windows 映像中非 Unicode 程序的语言(也称为系统区域设置)和字体设置。
语法:
/Set-SysLocale:<locale_name>
<locale_name>
指定要设置为非 Unicode 默认语言的语言名称和区域设置;例如en-US
。
重要
不能将仅限 Unicode 的语言设置为系统区域设置。 如果尝试这样做,/Set-SysLocale
选项将会失败,并且非 Unicode 程序的语言不会更改。
示例:
Dism /image:C:\test\offline /Set-SysLocale:fr-FR
/Set-UserLocale
在脱机 Windows 映像中设置“标准和格式”语言(也称为用户区域设置)。 “标准和格式”语言是基于用户的设置,用于确定日期、时间、货币和数字的默认排序顺序和默认格式设置。
语法:
/Set-UserLocale:<locale_name>
<locale_name>
指定要设置为非 Unicode 默认语言的语言名称和区域设置;例如en-US
。
示例:
Dism /image:C:\test\offline /Set-UserLocale:fr-FR
/Set-InputLocale
设置要在脱机 Windows 映像中使用的输入区域设置和键盘布局。
语法:
/Set-InputLocale:<input_locale>:<keyboard_layout>
<input_locale:keyboard_layout> 对的值可以是下列其中一项:
<language_id:keyboard_layout>
例如:
0409:00000409
<locale_name>
例如,如果将 en-US 指定为本地名称,则该
Set-InputLocale:
选项还会设置为此区域设置定义的默认键盘布局。
可以使用分号作为分隔符指定多个值。 如果要在一台计算机中包含对多个键盘的支持,这非常有用。 第一个值将设置为默认键盘。
HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Control\Keyboard Layouts
注册表项中列出了可以在计算机上配置的有效键盘布局
使用要配置的语言 ID 和键盘布局的十六进制值。
此参数是可选的。
示例:
Dism /image:C:\test\offline /Set-InputLocale:fr-fr
Dism /image:C:\test\offline /Set-InputLocale:0410:00010410
/Set-AllIntl
将默认系统 UI 语言、非 Unicode 程序的语言、“标准和格式”语言、输入区域设置和键盘布局设置为脱机 Windows 映像中指定的语言。 此选项指定以下项的语言值:
- UI 语言
- 系统区域设置
- 用户区域设置
- 输入区域设置
如果与指定单独语言或区域设置的任何选项结合使用,则单独的设置优先。
语法:
Set-AllIntl:<language_name>
<language_name>
指定语言名称和区域设置代码,例如en-US
、es-ES
或fr-FR
。
注意
从 Windows 10 版本 2004 开始,如果将基于 .appx 的语言体验包 (LXP) 支持的语言作为参数传递,则该语言将设置为系统首选 UI 语言,其父语言将设置为默认系统 UI 语言。
在以前的版本中,此选项不支持将 UI 设置为作为 LXP 安装的语言。
示例:
Dism /image:C:\test\offline /Set-AllIntl:fr-FR
/Set-TimeZone
设置 Windows 映像中的默认时区。 在设置时区之前,DISM 将验证指定的时区字符串对于该映像是否有效。
语法:
Set-TimeZone:<timezone_name>
<timezone_name>
指定要使用的时区的名称,例如“太平洋标准时间”。 有关时区字符串的完整列表,请参阅“Windows 无人参与安装参考”。时区的名称必须与注册表的
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
中的时区设置名称完全匹配。如果将自定义时区添加到计算机,可以指定自定义时区字符串。
示例:
Dism /image:C:\test\offline /Set-TimeZone"W. Europe Standard Time"
/Set-SKUIntlDefaults
将脱机 Windows 映像中的默认系统 UI 语言、非 Unicode 程序的语言、“标准和格式”语言、输入区域设置、键盘布局和时区值设置为 <language_name>
指定的默认值。 </Set-SKUIntlDefaults>
选项不会更改日语和韩语键盘的键盘驱动程序。 必须使用 /Set-LayeredDriver
选项来更改此驱动程序。
语法:
/Set-SKUIntlDefaults:<language_name>
<Language_Name>
指定要设置为默认回退语言的语言名称,例如en-US
。
使用 /Set-SKUIntlDefaults
更改脱机 Windows 映像中的所有国际设置,使其与零售安装期间设置的默认值相匹配。 有关每个语言包的默认值的详细信息,请参阅 Windows 语言包的默认输入区域设置。
此参数是可选的。 如果与本部分前面所述的某个设置结合使用,则单独的设置优先。
如果传递的语言与仅限 Unicode 的区域设置匹配,则系统区域设置不会更改,但命令不会失败。
示例:
Dism /image:C:\test\offline /Set-SKUIntlDefaults:fr-FR
/Set-LayeredDriver
指定用于日语或韩语键盘的键盘驱动程序。
在日本,许多零售版用户使用 106 键键盘,还有一些用户则使用 101 或 102 键键盘。 在韩国,有多种不同类型的键盘出售,其中一些键盘具有不同数量的键。
语法:
Set-LayeredDriver:<value>
这些设置的可能值为
1
、2
、3
、4
、5
、6
:1
指定 PC/AT 增强型键盘(101/102 键)。2
指定韩语 PC/AT 101 键兼容键盘/MS 自然键盘(类型 1)。3
指定韩语 PC/AT 101 键兼容键盘/MS 自然键盘(类型 2)。4
指定韩语 PC/AT 101 键兼容键盘/MS 自然键盘(类型 3)。5
指定韩语键盘(103/106 键)。6
指定日语键盘(106/109 键)。
示例:
Dism /image:C:\test\offline /Set-LayeredDriver:1
/Gen-LangINI
生成一个新的 Lang.ini 文件,安装程序使用该文件来定义映像内部和分发包外部的语言包。 该文件还定义安装程序的默认 UI 语言。
新的 Lang.ini 文件将添加到 Windows 分发包的源文件夹。
注意
系统不会提示你是否允许覆盖现有的 Lang.ini 文件。 将自动覆盖现有的 Lang.ini 文件。
必须指定脱机 Windows 映像 (/Image:<path_to_offline_image.wim>
) 和分发包 (`Distribution:<path_to_distribution_directory>)。
示例:
Dism /image:C:\test\offline /Gen-LangINI /distribution:C:\windows_distribution
/Set-SetupUILang
定义安装程序使用的默认语言。 如果无法使用该语言,安装程序自动使用“英语”。
这是一个可选命令。 如果不使用此命令,则会使用映像中的默认 UI 语言。 如果该语言不存在,则会使用当前语言列表中的第一种语言。
语法:
Set-SetupUILang:<language_name>
<Language_Name>
指定要设置为默认回退语言的语言名称,例如en-US
。
示例:
Dism /image:C:\test\offline /Set-SetupUILang:fr-FR /distribution:C:\windows_distribution
/Distribution
指定 Windows 分发版的路径。 Windows 分发包是在 Windows 产品媒体上发布的内容的副本。 如果有外部语言包,则此选项只能与 /Get-Intl
和 /Gen-LangINI
选项结合使用。
示例:
Dism /image:C:\test\offline /Gen-LangINI /distribution:C:\windows_distribution
限制
不能在包含国际维护命令的同一个命令行中使用其他维护命令。
不能将仅限 Unicode 的语言设置为系统区域设置。
以下语言是仅限 Unicode 的语言:
语言 国家/地区 阿姆哈拉语 埃塞俄比亚 亚美尼亚语 亚美尼亚 阿萨姆语 印度 Bangla 孟加拉国 Bangla 印度(孟加拉文) 迪维希语 马尔代夫 格鲁吉亚语 格鲁吉亚 古吉拉特语 印度(古吉拉特文) 印地语 印度 因纽特语(音节) 加拿大 卡纳达语 印度(埃纳德文) 哈萨克语 哈萨克斯坦 高棉语 柬埔寨 孔卡尼语 印度 老挝语 老挝语 PDR 马拉雅拉姆语 印度(马拉雅拉姆文) 马耳他语 马耳他 毛利语 新西兰 马拉地语 印度 蒙古语(蒙古文) 中国 尼泊尔语 尼泊尔联邦民主共和国 奥里亚语 印度(奥里亚文) 普什图语 阿富汗 旁遮普语 印度(果鲁穆奇文) 梵语 印度 僧伽罗语 斯里兰卡 叙利亚语 叙利亚 泰米尔语 印度 泰卢固语 印度(泰卢固文) 藏语 中国 彝语 中国 不要在更新后安装语言包。
如果在安装语言包之前安装的某个更新包含与语言相关的资源,则不会应用更新中包含的语言特定更改。 在安装更新之前,请始终安装语言包。
使用
/Set-TimeZone:<timezone_name>
指定时区时,必须对多个单词使用直引号 ("
)。 例如/Set-TimeZone:"Pacific Standard Time"
。 如果你从 Microsoft Word 文档中复制并粘贴包括引号的时区名称,则可能无法识别引号,导致命令行失败。如果你正在维护某个国际映像,而主机环境不支持该映像中的语言,则可能无法读取源自国际映像的错误消息。