设想:我想在 Windows 10 Pro 安装程序中添加其他语言,这样我就可以通过packer
仅更改autounattend.xml
文件轻松构建 Windows 实例。
我希望 Windows 10 在安装过程中安装所需的语言,而不是在en-US
安装后再安装语言包。
我知道我可以从 Microsoft 下载每种语言特定的 ISO,但我不喜欢为每种我想要支持的语言保留 4-5GB ISO,而理论上我应该能够创建一个包含我需要的所有语言的安装程序。
我无法访问 Microsoft OEM 站点、设备合作伙伴中心或 Microsoft 下一代批量许可站点。
资源:
- Windows 10 ISO:https://www.microsoft.com/en-us/software-download/windows10ISO
- Windows ADK/Windows PE 附加组件:https://docs.microsoft.com/en-us/windows-hardware/get-started/adk-install
- 根据需要添加和删除语言包、LIP 和功能:https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/add-language-packs-to-windows#add-and-remove-language-packs-lips-and-features-on-demand
问题
我从上面的公共下载链接下载了 Windows 10 ISO,并将内容复制到我的计算机上的可写位置。
我还为正在使用的 Windows 10 的适当版本(1809 或 1903)安装了 Windows ADK 和 Windows PE 插件。
当我尝试集成 Windows PE 附加组件中附带的语言包时,我注意到该版本与公共 ISO 中的映像版本不匹配。
Windows PE 附加组件中的语言包版本似乎总是.1
和公共 Windows 10 ISO 上的版本似乎总是.3
当我尝试将语言包集成到中时sources\install.wim
,Win10_1809Oct_v2_English_x64.iso
我得到以下输出:
dism /image:C:\mount\boot /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\lp.cab"
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Image Version: 10.0.17763.379
Processing 1 of 1 - Adding package Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~ko-KR~10.0.17763.1
[==========================100.0%==========================]
Error: 0x800f081e
The specified package is not applicable to this image.
我注意到语言包版本似乎是,10.0.17763.1
而公共 1809 ISO 似乎包含发布10.0.17763.379
如果我安装 1903 版的 Windows ADK/PE 插件并尝试使用 1903 ISO,Win10_1903_V1_English_x64.iso
会出现同样的错误:
dism /image:C:\mount\boot /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\fr-fr\lp.cab"
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Image Version: 10.0.18362.30
Processing 1 of 1 - Adding package Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~fr-FR~10.0.18362.1
[==========================100.0%==========================]
Error: 0x800f081e
The specified package is not applicable to this image.
有大量与此操作相关的输出C:\Windows\Logs\DISM\dism.log
。我对 Windows 了解不多,但问题似乎是由于版本不匹配而无法找到语言包的父包:
2019-07-15 16:21:50, Info DPX Extraction of file: update.ses failed because it is not present in the container (\\?\C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\fr-fr\lp.cab).
2019-07-15 16:21:50, Info DPX DpxException hr=0x80070002 code=0x020109
2019-07-15 16:21:50, Info CBS Not able to add file to extract: update.ses [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2019-07-15 16:21:50, Info CBS Appl: detect Parent, Package: Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~fr-FR~10.0.18362.1, Parent: Microsoft-Windows-WinPE-Package~31bf3856ad364e35~amd64~~10.0.18362.1, Disposition = Detect, VersionComp: EQ, BuildComp: EQ, RevisionComp: GE, Exist: present
2019-07-15 16:21:50, Info CBS Appl: detectParent: no parent found, go absent
2019-07-15 16:21:50, Info CBS Appl: Evaluating package applicability for package Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~fr-FR~10.0.18362.1, applicable state: Absent
2019-07-15 16:21:50, Info DISM DISM Package Manager: PID=3140 TID=15264 Package Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~fr-FR~10.0.18362.1 with CBS state 0(CbsInstallStateAbsent) being mapped to dism state 1(DISM_INSTALL_STATE_NOTPRESENT) - CDISMPackage::LogInstallStateMapping
2019-07-15 16:21:50, Error DISM DISM Package Manager: PID=3140 TID=15264 The package Microsoft-Windows-WinPE-LanguagePack-Package is not applicable to the image. - CPackageManagerCLIHandler::Private_ProcessPackageChange
2019-07-15 16:21:50, Info DISM DISM Package Manager: PID=3140 TID=15264 Initiating Changes on Package with values: 4, 7 - CDISMPackage::Internal_ChangePackageState
2019-07-15 16:21:50, Info DISM DISM Package Manager: PID=3140 TID=15264 CBS session options=0x0! - CDISMPackageManager::Internal_Finalize
问题
- 是否可以从民众(微软官方)对应于build
10.0.17763.1
或的源10.0.18362.1
? - 如果这不可能的话,民众发行版本有哪些语言包
.3
? - 无需 MSDN 帐户或许可协议,可以将语言包集成到安装程序中吗?
答案1
我要回答我自己的问题,因为我已经弄清楚了这个问题。
tl;dr - 如果您想自定义 Windows 10 安装程序以便能够以多种语言安装 Windows 10,那么 Windows 10 ADK/PE 插件可能不是您想要的。
相反,请获取适用于 Windows 10 版本的语言包 ISO。语言包 ISO 包含Microsoft-Windows-Client-LanguagePack
适用于 Windows 10 的本地化文件。
Microsoft-Windows-WinPE-LanguagePack
ADK/PE 附加组件提供的文件是 Windows PE 的语言包。您可以将其与文件一起使用,boot.wim
也可以不与install.wim
文件一起使用。
是否可以从公共(Microsoft 官方)来源下载与版本 10.0.17763.1 或 10.0.18362.1 相对应的 Windows 10 ISO?
是的Windows 10 企业评估 ISO1809 版企业评估 ISO 已发布10.0.17763.107
。1903 版企业评估 ISO 已发布10.0.18362.30
。
请注意,您必须提供“公司详细信息”才能下载企业评估 ISO。
如果这不可能,是否有针对 .3 版本的公共语言包?
事后看来,阻止我应用 Windows 10 ADK/Windows PE 附加组件中附带的语言包的问题非常明显:
Adding package Microsoft-Windows-WinPE-LanguagePack
正如上面名称所暗示的那样,Windows PE 附加组件安装的语言包适用于 Windows PE 和不是适用于 Windows 10 操作系统。
如果您sources\boot.wim
从安装程序 ISO 安装并尝试应用 Windows ADK/PE 插件安装的语言包,它会起作用:
dism /get-wiminfo /wimfile:F:\Downloads\W10-1809-LTSC\sources\boot.wim
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Details for image : F:\Downloads\W10-1809-LTSC\sources\boot.wim
Index : 1
Name : Microsoft Windows PE (x64)
Description : Microsoft Windows PE (x64)
Size : 1.615.100.044 bytes
Index : 2
Name : Microsoft Windows Setup (x64)
Description : Microsoft Windows Setup (x64)
Size : 1.774.244.896 bytes
The operation completed successfully.
PS C:\Windows\system32> dism /mount-image /imagefile:F:\Downloads\W10-1809-LTSC\sources\boot.wim /index:1 /mountdir:C:\mount\boot
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Mounting image
[==========================100.0%==========================]
The operation completed successfully.
PS C:\Windows\system32> dism /image:C:\mount\boot /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\lp.cab"
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Image Version: 10.0.17763.107
Processing 1 of 1 - Adding package Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~ko-KR~10.0.17763.1
[==========================100.0%==========================]
The operation completed successfully.
但是尝试这样做sources\install.wim
却不起作用,因为安装程序不是 Windows PE。
.3 版本有公共语言包吗?
没有,据我所知没有。至少不是我合理认为的“公开”
如果要将语言包应用于 Windows 10 1809 安装程序,则应使用您最喜欢的搜索引擎来查找mu_windows_10_language_pack_version_1809_updated_sept_2018_x86_x64_arm64_dvd_f17c743a.iso
。它大约有 5.9GB 大,包含适用于 Windows 10 (17763.1) 的 x86、x64 和 arm64 版本的语言包。
我找不到此语言包 ISO 的 Microsoft 官方来源,但一些文件共享网站可以下载。您应该能够通过搜索上面的 ISO 名称找到副本(至少对于 Windows 10 1809)。
无需 MSDN 帐户或许可协议,可以将语言包集成到安装程序中吗?
至少从我的研究来看,这个问题的理论答案是否定的。
然而实际的答案是是的。如果您可以从第三方找到上述语言包 ISO,则可以使用Windows 10 October 2018 Update
官方 ISO来自 Microsoft 添加语言:
Deployment Image Servicing and Management tool
Version: 10.0.17763.1
Image Version: 10.0.17763.379
Processing 1 of 1 - Adding package Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e35~amd64~ko-KR~10.0.17763.1
[==========================100.0%==========================]
The operation completed successfully.
我不确定 1903 版或未来的 Windows 10 版本会做什么。确定语言包 ISO 的名称,看看你是否能找到一个“公共”来源来下载它 ¯_(ツ)_/¯