tiny11builder 国际版三步搞定多语言与区域设置【免费下载链接】tiny11builderWinUI app for building smaller, customized Windows 11 images.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder给德国客户装机装的是 tiny11builder 出的镜像OOBE 第一屏是英文日期格式yyyy-M-d货币是美元。要出一版带多语言、区域设置符合当地习惯的国际版镜像只需要动三个地方脚本里的两个注入点、自动应答文件以及装完后的三处验证。tiny11builder 是一个用 DISM 精简 Windows 11 镜像的 PowerShell 脚本把install.wim挂载到工作目录依次删应用、改注册表、放自动应答文件、打 ISO。多语言和区域设置全部挂在这条流水线上。先把脚本和autounattend.xml拷到自己的工作目录后文所有改动都作用在自己的副本上git clone https://gitcode.com/GitHub_Trending/ti/tiny11builder动手前确认源 ISO 的语言基线语言包和版本号强绑定先摸清楚源镜像的 build 和当前 UI 语言。tiny11maker.ps1 里已经写好了这段逻辑挂载镜像后用dism /Get-Intl读取默认系统 UI 语言并打进日志。$imageIntl dism /English /Get-Intl /Image:$($ScratchDisk)\scratchdir $languageLine $imageIntl -split \n | Where-Object { $_ -match Default system UI language : ([a-zA-Z]{2}-[a-zA-Z]{2}) }正式跑之前可以手动执行同一条命令拿到Default system UI language这一行。后面选的语言包必须和这个 build 完全一致22H2 与 23H2 互不通用对不上会在安装包那一步直接报版本不兼容。脚本副本加两个注入点语言包只在 WIM 挂载期间安装注入窗口在脚本的Mount-WindowsImage与Dismount-WindowsImage之间。挂载完成脚本 165 行附近之后插一段循环把 DISM 对着已挂载的离线镜像装包Write-Output Adding language packs... $languagePacks Get-ChildItem -Path $PSScriptRoot\LanguagePacks -Filter *.lip foreach ($lp in $languagePacks) { dism /English /Image:$($ScratchDisk)\scratchdir /Add-Package /PackagePath:$($lp.FullName) }语言包统一放脚本目录下的LanguagePacks文件夹。如果拿到的包是.cab后缀把-Filter同步改一下。⚠️ 语言包和语言界面包LIP不是同一种包且版本必须与 WIM 精确匹配。跑完用dism /English /Image:D:\scratchdir /Get-Packages核对输出里已包含目标语言。区域注册表阶段写进离线 hive语言包只负责让语言可用默认用哪个由注册表决定。脚本会把镜像里的 SYSTEM、SOFTWARE、DEFAULT 等 hive 用reg load挂到HKLM\zSYSTEM、HKLM\zSOFTWARE、HKLM\zDEFAULT这类前缀节点下。在挂载完成之后用脚本自带的Set-RegistryValue助手函数内部就是reg add补上这几条# 系统区域中文中国 Set-RegistryValue HKLM\zSYSTEM\ControlSet001\Control\International Locale REG_SZ 00000804 Set-RegistryValue HKLM\zSYSTEM\ControlSet001\Control\International LocaleName REG_SZ zh-CN # 系统 UI 语言 Set-RegistryValue HKLM\zSYSTEM\ControlSet001\Control\MUI\Settings PreferredUILanguages REG_MULTI_SZ zh-CN # 默认用户的首选语言 Set-RegistryValue HKLM\zDEFAULT\Control Panel\International\User Pref UserPreferredLanguages REG_SZ zh-CN路径z前缀是离线挂载点值名类型作用HKLM\zSYSTEM\ControlSet001\Control\InternationalLocaleREG_SZ系统区域数字代码如00000804同一路径LocaleNameREG_SZ区域名称zh-CN/de-DEHKLM\zSYSTEM\ControlSet001\Control\MUI\SettingsPreferredUILanguagesREG_MULTI_SZ系统 UI 语言优先级HKLM\zDEFAULT\Control Panel\International\User PrefUserPreferredLanguagesREG_SZ默认用户首选语言决定 OOBE 后首个登录界面的语言⚠️ 只装语言包、不写这几条值装完系统依然是源 ISO 的默认语言——包只是装上了没被设为默认。常用区域的参数对照改值时照抄即可目标地区UILanguageInputLocaleLocaleLocaleName简体中文zh-CN0804:0000080400000804zh-CN德语de-DE0407:0000040700000407de-DE日语ja-JP1004:0000100400000411ja-JPInputLocale是LCID:KLID格式前者语言、后者键盘布局。在 autounattend.xml 的 WinPE 阶段锁住区域注册表管的是装完之后autounattend.xml 管的是安装过程中。仓库里这份 xml 目前只有两个阶段windowsPE下是Microsoft-Windows-Setup指定镜像索引、空产品键oobeSystem隐藏微软账户登录选项。国际组件是缺的默认语言完全跟着源 ISO 走。在已有的settings passwindowsPE里、Microsoft-Windows-Setup组件之后补入国际组件component nameMicrosoft-Windows-International-Core-WinPE processorArchitectureamd64 publicKeyToken31bf3856ad364e35 languageneutral versionScopenonSxS SetupUILanguage UILanguagede-DE/UILanguage /SetupUILanguage InputLocale0407:00000407/InputLocale SystemLocalede-DE/SystemLocale UILanguagede-DE/UILanguage UserLocalede-DE/UserLocale /component两个易错点阶段必须写在windowsPE放进oobeSystem影响不到安装器语言processorArchitecture要和镜像架构一致脚本解析出的 x64 会归一成amd64这里照抄即可。还有一个细节容易漏脚本会把这份文件复制进 ISO 两个位置——镜像内的Windows\System32\Sysprep目录一份ISO 根目录一份。所以一个文件同时管住安装和 sysprep 全链路改一处就够。⚠️ 打包收尾时脚本会删掉脚本目录里的autounattend.xml下次运行发现文件缺失会自动拉取上游原版。改过的 xml 在每次构建前重新放回去否则区域配置会静默回退。构建后装机逐项验证跑脚本出 ISO。tiny11maker.ps1 用Start-Transcript自动落日志到tiny11_yyyyMMdd_HHmms.log在里面确认两行Default system UI language code:源语言基线和Set registry value: HKLM\zSYSTEM...区域值写进了 hive。装镜像。OOBE 第一屏的语言验证windowsPE阶段的 xml 是否生效。首次登录后打开设置 时间和语言 语言和区域已安装语言里有没有新加的语言包、日期 / 时间 / 货币格式是否符合目标地区再开intl.cpl确认输入法布局。排错速查语言包安装失败多半是版本没对齐。用dism /Get-WimInfo输出里的 build 和语言包文件的版本比对顺带检查暂存盘空间WIM 挂载展开后体积不小。OOBE 还是英文查 xml 的阶段是不是写成了oobeSystem或组件里漏了SetupUILanguage。装完系统语言没变只装了包没写PreferredUILanguages和UserPreferredLanguages默认语言由这两条值决定。日期 / 货币格式不对Locale和LocaleName要成对写只写一半格式不会跟着变。一个操作建议多地区出镜像时按地区拆工作目录每个目录放一个语言包、一份 autounattend.xmlISO 文件名带上地区 源 build 号。出问题的时候一眼就知道是哪个阶段、哪个包的问题不用翻日志回溯当时注入了什么。【免费下载链接】tiny11builderWinUI app for building smaller, customized Windows 11 images.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考