将语言添加到 Windows 映像

本主题介绍如何通过添加语言包和相关语言组件来将一种或多种语言添加到映像中。

注意

要将语言添加到个人电脑,请转到“设置”>“时间和语言”>“语言”,然后选择要安装的语言了解详细信息

添加语言包、LIP 和按需功能

本部分将介绍如何将语言添加到映像中。 我们将:

  1. 查看映像是否包含 FOD,其语言资源位于附属包中。
  2. 添加语言并验证为每个 FOD 引入的所有语言资源。
  3. 添加 LIP 语言及其相关的按需语言功能包。

添加语言后,如果要部署到非英语区域,可通过删除英语语言组件来节省空间。 删除语言时,请按与添加语言组件相反的顺序卸载语言组件。

装载映像

使用 DISM 装载 Windows 映像:

md C:\mount\windows
Dism /Mount-Image /ImageFile:install.wim /Index:1 /MountDir:"C:\mount\windows"

检查映像是否包含带附属包的 FOD

在开始添加语言组件之前,请先检查映像是否包含 FOD,其语言资源位于附属包中。 如果映像包含 FOD,其语言组件位于附属包中,则添加语言时,必须使用语言和 FOD 存储库:

  • 从 Windows 11 开始,请使用语言和可选功能 ISO 作为语言和 FOD 存储库。
  • 对于 Windows 10 版本 21H1 及更低版本,如果映像包含具有语言附属包的 FOD,则必须创建自定义 FOD 存储库

检查附属包:

  1. 在命令提示符下,运行 DISM 以查看映像中的包:

    Dism /Image:"C:\mount\windows" /get-packages /format:table
    
  2. 在输出中,查找不属于语言功能的按需功能包,其名称中包含语言代码。 例如,MSPaint:

    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~en-US~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~wow64~en-US~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~wow64~~10.0.19041.1
    

    此处在名称中嵌入 en-us 语言代码的两个包是具有特定于语言的资源的附属包。 如果映像中存在任何此类包,则必须生成一个自定义 FOD 和语言包存储库,以便从其中添加语言。 此自定义存储库需包含映像中包含附属包的所有 FOD 和要添加的所有语言包。 这样,DISM 就可以在添加语言时自动拉入正确的 FOD 附属包。

添加语言包、LIP (LXP) 和语言功能

通过添加语言包及其相应的按需功能包来预安装语言。 如果要添加 LIP 语言,请确保还包含所有相关的基本语言:

  1. 添加语言包:

    使用 DISM 将语言包添加到装载的映像中:

    Dism /Image:"C:\mount\windows" /Add-Package /PackagePath="F:\LanguagesAndOptionalFeatures\Microsoft-Windows-Client-Language-Pack_x64_es-es.cab"
    

    PackagePath 可以是装载的语言和可选功能 ISO、语言包 ISO 或自定义 FOD 和语言存储库,具体取决于所用的 Windows 版本。

  2. 如果 Windows 映像包含 FOD,其语言组件位于附属包中,请检查是否同时添加了语言包和包含语言资源的 FOD 附属包:

    Dism /Image:"C:\mount\windows" /Get-Packages /format:table
    

    应该会在输出中看到如下所示的内容:

    Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e35~amd64~es-es~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~en-US~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~es-es~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~wow64~en-US~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~wow64~es-es~10.0.19041.1
    Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~wow64~~10.0.19041.1
    

    除了现在显示在映像中的 es-es 语言包外,还请注意 MSPaint 按需功能的附属包包含 en-us 和 es-es 语言代码。 对于添加的每种语言,请确保每个带有特定于语言的附属包的 FOD 都是这种情况。

    注意

    必须使用 DISM /add-capability 添加带附属包的 FOD,这样才能正确添加附属包。

  3. 添加 LIP 语言

    注意

    从 Windows 11 开始,只有以 .cab 文件形式分发的语言包才可用于映像。 未以 .cab 文件形式分发的 LIP 语言只能作为 .appx 包提供(可在登录后通过“设置”应用获得)。

    在本例中,我们添加了加泰罗尼亚语,它需要 es-ES 基本语言:

    • 从 Windows 11 开始,添加以 .cab 形式提供的 5 种 LIP 语言之一(ca-ES、eu-ES、gl-ES、id-ID、vi-VN):

       Dism /Image:"C:\mount\windows" /Add-Package /PackagePath="F:\LanguagesAndOptionalFeatures\Microsoft-Windows-Lip-Language-Pack_x64_ca-es.cab"
      
      
    • 在 Windows 10 版本 1809 到 Windows 10 版本 21H1 中,LIP 语言作为 LFP 提供:

      DISM /Image:"C:\mount\windows" /Add-ProvisionedAppxPackage /PackagePath="E:\LocalExperiencePack\ca-es\LanguageExperiencePack.ca-es.Neutral.appx /LicensePath:"D:\LocalExperiencePack\ca-es\License.xml"
      

      其中,E:\ 是语言包 ISO

      确保它位于映像中:

      DISM /Image:"C:\mount\windows" /get-provisionedappxpackages
      
    • 对于早期版本的 Windows 10,LIP 语言以 .cab 文件形式提供:

      Dism /Image:C:\mount\windows /add-package /packagepath:C:\LanguagePack\LIPs\ca-ES\LIP_ca-ES64bit.cab
      
  4. 添加语言和区域按需功能以支持语言包和 LIP。 建议将基本内容、字体、OCR、文本到语音转换和语音识别 FOD 包含在内(如果它们适用于你预安装的语言)。 此外,如果交付的设备附带笔,还应包括手写语言组件 FOD。

    并非所有 LIP 语言都具有所有语言组件。 例如,加泰罗尼亚语 (ca-es) 仅具有基本内容和手写 FOD。 如需了解适用于语言的 FOD,请参阅 LP 到 FOD 映射电子表格

    例如:将基本内容、OCR、文本转语音和语音识别添加到 es-es:

    Dism /Image:"C:\mount\windows" /Add-Capability /capabilityname:Language.Basic~~~es-es~0.0.1.0 /capabilityname:Language.Handwriting~~~es-es~0.0.1.0 /capabilityname:Language.OCR~~~es-es~0.0.1.0 /capabilityname:Language.Speech~~~es-es~0.0.1.0 /capabilityname:Language.TextToSpeech~~~es-es~0.0.1.0 /source:C:\repository
    

    例如:将基本内容和手写添加到 ca-es:

    Dism /Image:"C:\mount\windows" /Add-Capability
    /capabilityname:Language.Basic~~~ca-es~0.0.1.0
    /capabilityname:Language.Handwriting~~~ca-es~0.0.1.0
    /source:C:\repository
    

    验证这些包是否在映像中:

    Dism /Image:"C:\mount\windows" /Get-Packages /format:table
    Dism /Image:"C:\mount\windows" /Get-Capabilities /format:table | findstr /i "installed"
    

    注意

    只有管理员帐户可以执行更改操作。 标准用户将获得有限的体验。 有关详细信息,请参阅 Windows 10 中不显示语言功能

  5. 如果在添加语言之前添加了更新包 (LCU),请重新安装更新包,以确保更新的所有语言资源都在你的映像中。 有关详细信息,请参阅向 Windows 映像添加更新

删除语言、LIP、LXP 和按需功能

重要

如果有挂起的联机操作,则不能从脱机的 Windows 映像中删除语言包。 Windows 映像应为最近安装并捕获的映像。 这将保证 Windows 映像没有任何需要重新启动的挂起的联机操作。

  1. 获取映像中安装的包和功能列表:

    Dism /Image:"C:\mount\windows" /Get-Packages /format:table
    Dism /Image:"C:\mount\windows" /Get-Capabilities /format:table | findstr /i "installed"
    
  2. 删除语言、基于 .cab 的 LIP 和按需功能:

    Dism /Image:"C:\mount\windows" /Remove-Package /PackageName:<language pack name> /PackageName:<feature on demand name> ...
    
  3. 删除通过 LXP 添加的 LIP:

    Dism /remove-provisionedappxpackage /packagename:Microsoft.LanguageExperiencePack<lang_version>_neutral__8wekyb3d8bbwe
    
  4. 确保它们不再位于映像中:

    Dism /Image:"C:\mount\windows" /Get-Packages /format:table
    Dism /Image:"C:\mount\windows" /Get-Capabilities /format:table | findstr /i "installed"
    

更改默认语言、区域设置和其他国际设置

  • 从 Windows 11 开始,DISM 设置的默认系统 UI 语言在所有版本中保持不变(家庭版除外)。 对于所有商业版,在开箱即用体验 (OOBE) 期间选择的语言会设置为系统首选 UI 语言,Windows 将以此语言显示;对于家庭版 SKU,在 OOBE 期间选择的语言将继续用作默认系统 UI 语言。

  • 从 Windows 10 版本 2004 开始,如果将基于 .appx 的语言体验包 (LXP) 支持的语言作为参数传递,则该语言将设置为系统首选 UI 语言,其父语言将设置为默认系统 UI 语言。 在以前的版本中,仅支持基于 .cab 的语言包。

    Dism /Image:"C:\mount\windows" /Set-AllIntl:es-es
    

    查看可用的语言设置:

    Dism /Image:"C:\mount\windows" /Get-Intl
    
  • 对于联机映像,请使用“控制面板”或国际设置 PowerShell cmdletsGet-WinSystemLocaleSet-WinSystemLocale <language>。 这适用于以 LXP 形式提供的语言。

有关更多选项,请参阅

将语言添加到恢复环境 (Windows RE)

对于添加到 Windows 的任何语言,请尽可能将语言添加到 Windows 恢复环境 (WinRE)

并非所有语言或 LIP 都有本地化的恢复映像。

使用语言和可选功能 ISO 中的语言而不是 Windows 10 ADK 中的语言来本地化 WinRE。

注意

已知问题:Windows 10 2018 年 10 月更新包含的 Windows RE 泰语映像(en-US 基础语言 + th-th 语言包)随附的问题,即最终用户只能在 Windows 恢复环境中看到没有泰语文本的 UI 组件(或英语)、恢复过程显示的文本(按钮重置)和/或功能更新的重新启动过程中的某些屏幕。 要解决此问题,请预安装 2018.11D 质量更新。

  1. 装载恢复映像。

    • 脱机:恢复映像位于 Windows 映像中:

      md C:\mount\winre
      Dism /Mount-Image /ImageFile:"C:\mount\windows\Windows\System32\Recovery\winre.wim" /index:1 /MountDir:"C:\mount\winre"
      
    • 联机

      md C:\mount\winre
      Dism /Mount-Image /ImageFile:"C:\Windows\System32\Recovery\winre.wim" /index:1 /MountDir:"C:\mount\winre"
      

      请注意,Windows RE 一直位于 Windows 映像中,直到开箱即用体验出现之后才会被移动到单独的恢复分区。

  2. 添加语言:

    D:
    cd D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\lp.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-Rejuv_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-EnhancedStorage_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-Scripting_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-SecureStartup_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-SRT_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-WDS-Tools_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-WMI_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-StorageWMI_es-es.cab"
    Dism /Image:"C:\mount\winre" /Add-Package /PackagePath:"D:\Windows Preinstallation Environment\x64\WinPE_OCs\es-es\WinPE-HTA_es-es.cab"
    

    其中 D:\ 是语言和可选功能 ISO。

  3. 确保它们位于映像中:

    Dism /Get-Packages /Image:"C:\mount\winre"
    

    /Get-Packages 的示例输出:

    Package Identity : Microsoft-Windows-WinPE-Rejuv_es-es ... es-es~10.0.9926.0 State : Installed
    
  4. 将更改提交到恢复映像:

    Dism /Commit-Image /MountDir:"C:\mount\winre"
    

    对于联机映像,还应删除装载文件夹:

    rmdir /s "C:\mount\winre"
    

捕获更改

  • 脱机:适用于 Windows 映像 (install.wim)

    将更改提交到 Windows 映像:

    Dism /Commit-Image /MountDir:"C:\mount\windows"
    
  • 联机:修改运行的 Windows 安装

    通用化并捕获映像:

    %WINDIR%\system32\sysprep\sysprep.exe /generalize /shutdown /oobe
    

    如需了解详细信息,请参阅通用化

后续步骤

本地化更多 Windows 内容:

将安装过程本地化:

本地化 Windows

按需功能

将语言添加到 Windows 恢复环境 (WinRE)

使用 DISM 为 Windows 映像提供服务

DISM - Windows 的部署映像服务和管理技术参考

DISM 语言和国际服务命令行选项

DISM 无人参与服务命令行选项

Windows 系统映像管理器技术参考