Hello, I am Henry, I will help with this.
- Is full zh-CN localization for all users possible using offline VLSC LOF ISO + English ISO as the base? Yes, it is possible, but it requires meticulous configuration, primarily within your unattend.xml file used by MDT, and ensuring all necessary components are integrated correctly. The partial localization you're seeing strongly suggests that the system-wide defaults and the default user profile settings aren't being fully set to zh-CN.
- Am I missing any required language components from VLSC?
The "Languages and Optional Features for Windows 11, version 24H2" ISO should contain all the necessary components. These typically include:
- Language Pack (LP): Microsoft-Windows-Client-Language-Pack_x64_zh-cn.cab
- Basic Typing: FoD (Feature on Demand) e.g., Microsoft-Windows-LanguageFeatures-Basic-zh-cn-Package~31bf3856ad364e35~amd64~~.cab
- Fonts: FoD e.g., Microsoft-Windows-LanguageFeatures-Fonts-Hans-Package~31bf3856ad364e35~amd64~~.cab
- Handwriting: FoD (if needed)
- OCR: FoD (if needed)
- Speech: FoD (if needed)
- Text-to-Speech (TTS): FoD (if needed)
- Local Experience Pack (LXP): e.g., Microsoft-Windows-Client-Desktop-Required-LXP-Package_zh-cn~31bf3856ad364e35~amd64~zh-cn~.msixbundle or .appxbundle. This is increasingly important for the "modern" parts of the UI like Start, Settings, and Widgets.
- When you use DISM offline, you need to ensure you're adding:
- The main language pack (.cab) using DISM /Add-Package.
- The relevant FoDs (.cab) using DISM /Add-Capability.
- The LXP (.appx or .msixbundle) using DISM /Add-ProvisionedAppxPackage.
Why your current method is partially failing:
- Manually switching the language for the local admin only changes it for that specific user's profile.
- If CopyProfile isn't used or if the default user profile wasn't properly updated with zh-CN settings before domain users log in, they will default back to the base image language (English) or a mix.
- Some modern app components (Widgets, parts of Settings) rely heavily on the LXP and the profile language being set correctly from the outset.
Summary of Actions:
- Verify you are adding all necessary zh-CN components (LP, Basic, Fonts, LXP, other FoDs) using DISM offline.
- Crucially configure your unattend.xml used by MDT:
- Set InputLocale, SystemLocale, UILanguage, UserLocale to zh-CN (or appropriate codes) in both specialize and oobeSystem passes under Microsoft-Windows-International-Core.
- Set <CopyProfile>true</CopyProfile> in the specialize pass under Microsoft-Windows-Shell-Setup.
- Ensure MDT variables for language are also set to zh-CN.
- Test with a NEW domain user profile.
By focusing on the unattend.xml and CopyProfile, you should be able to achieve the full zh-CN localization you're aiming for across all domain users. Using a native zh-CN ISO is often simpler if available and permitted, but your current approach is definitely viable with the correct configuration.