Получи случайную криптовалюту за регистрацию!

Как изменить язык установки Windows Вопрос задал коллега, у к | Windows 11, 10, etc - Вадим Стеркин

Как изменить язык установки Windows

Вопрос задал коллега, у которого ряд клиентов не обновлялись до новой версии Windows 11 посредством WSUS. Он предположил, что на WSUS нет обновления для языка этих систем. Язык установки ОС легко проверить в #PowerShell:

(Get-CimInstance Win32_OperatingSystem).OSLanguage

На выходе: 1033 - en-US, 1049 - ru-RU, а остальное тут. Страница в веб-архиве удобна тем, что содержит одновременно десятичные и шестнадцатеричные значения. В актуальной документации нашлось только раздельно: HEX и DEC.

И ви таки не поверите, с каким языком эникейщики раскатали Windows 11

Между тем, сегодня двойная рубрика "Возвращаясь к напечатанному". До сих пор был ремейк поста блога 12-летней давности об установке SP1 на Windows 7. А смену языка установки ОС я показывал в канале почти 6 лет назад - с помощью DISM из Windows RE:

dism /image:C:\ /set-uilang:en-us

Тестирование на актуальных версиях Windows 10 и 11 выявило нестыковку. Переключение с русского на английский язык работает как и прежде, а вот с английского на русский в Windows 11 уже не сработало, втч на чистой ВМ. Лог dism ничего не прояснил.

Возможно, это связано с изменениями в обработке языка в процессе установки ОС. Про нововведения в 20H1 я рассказывал в блоге. А сейчас в документации /set-uilang добавилось примечание, что начиная с Windows 11 заданный язык установки ОС не переопределяется пользователем при выборе языка на этапе OOBE (за исключением домашних изданий).

К счастью, команда DISM просто изменяет параметр InstallLanguage в реестре. Скрипт ниже задает английский язык установки ОС, если задан любой язык кроме русского или английского.

$Language = (Get-itemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Language" -Name InstallLanguage).InstallLanguage
#0419 - ru-RU, 0409 - en-US
if ($Language -ne "0419" -and $Language -ne "0409") {
Write-host "Current: "$Language
Set-itemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Nls\Language" -Name InstallLanguage -Value 0409
}

После смены языка клиенты успешно получили новую версию ОС с WSUS