Не удаляется язык: как принудительно удалить языковой пакет в Windows 10
Случается у Windows 10 такая проблемка: если на компе кроме основного языка ввода используется еще несколько, то иногда удалить ненужный языковой пакет система не даёт (кнопка «Удалить» в соответствующем окне настроек не активна).
К примеру, такое бывает, если пользователь случайно (или сама Windows 10 в ходе очередного обновления) устанавливает языковой пакет, в котором основной язык совпадает с языком ввода системы.
Собственно, именно с этой проблемой довелось познакомиться многим юзерам после установки Апрельского обновления (версия 1803).
Тем не менее, если удалить лишний язык все-таки нужно, даже если кнопка «Удалить» не работает, то можно попробовать решить задачку с помощью PowerShell.
И сейчас мы расскажем, что и как для это нужно сделать. Итак.
как принудительно удалить языковой пакет Windows 10
Значит, раз кнопка «Удалить» в настройках «Языков» Windows 10 не включается (серая и не нажимается), то далее:
- кликаем «Пуск«, в строке поиска пишем powershell, в результатах поиска выше жмем правой кнопкой мыши по названию Windows PowerShell и в появившемся меню выбираем «Запуск от имени администратора«;
- в окне Windows PowerShell вводим команду, которая открывает весь список языковых пакетов, установленных на ПК, и жмем Enter:
Get-WinUserLanguageList
- в списке находим и запоминаем/записываем LanguageTag языкового пакета, который нужно удалить:

- далее по очереди (по одной за раз) вводим следующие команды (после каждый жмем Enter):
$LangList = Get-WinUserLanguageList $MarkedLang = $LangList | where LanguageTag -eq "LANGUAGETAG" $LangList.Remove($MarkedLang) Set-WinUserLanguageList $LangList -Force
- во второй команде вместо LANGUAGETAG указываем LanguageTag соответствующего языкового пакета. Например, en-IN (см. скриншот).
После этого, заходим в настройки Windows 10, находим раздел «Регион и язык«, в нем ищем тот языковой пакет, который до этого удалить не получалось, и удаляем его обычным способом.
К слову, напомним, если вы хотите удалить язык, который указан в качестве основного языка интерфейса, то сначала следует назначить другой язык, иначе кнопка «Удалить» не включится.
Удаление лишних языков раскладок клавиатуры в Windows 10

14.04.2022

itpro

Windows 10, Windows 11, Вопросы и ответы

комментариев 36
Несколько раз в Windows 10 замечал странный баг, когда в списке раскладок клавиатуры языковой панели появляются лишние языки. Например, у меня на ноутбуке было установлено 2 языка: русский, английский. Но после очередного обновления Windows 10, в списке языков появились еще два дополнительных языка – English (United Kingdom) и English (Canada), хотя я их не добавлял. Теперь в списке раскладок клавиатуры у меня отображается четыре языка. Причем Windows не дает удалить дополнительные языки (кнопка Remove в языковой панели неактивна). При переключении языков клавишами Shift+Alt , или через языковую панель в трее, приходится переключаться между 4 раскладками клавиатуры вместо 2, что очень неудобно!

Рассмотрим, как удалить такие неудаляемые раскладки клавиатуры в Windows 10 и Windows 11.
В Windows 10 обычно можно удалить любой язык раскладки клавиатуры, который не используется в качестве основного языка по умолчанию. Однако вы можете столкнуться с багом, когда некоторые языки нельзя удалить.
Первый раз баг с неудаляемой раскладкой клавиатуры появился после апгрейда до Windows 10 1803 (в этом билде было много других сюрпризов, например дополнительный раздел восстановления, который появился после обновления).
Баг проявляется, если добавить дополнительный язык, который использует тот же базовый язык, что и текущий язык отображения Windows. Такой дополнительный язык язык удалить нельзя.
К примеру, если английский язык (United States) является текущим языком интерфейса Windows, то после добавления английского языка (United Kingdom) вы не сможете удалить оба этих языка из списка предпочтительных. И, конечно, очень неудобно, что в языковой панели в системно трее (области уведомлений) появился лишний ненужный язык.
С помощью команды lpksetup вы не сможете удалить дополнительные языки из системы, т.к. этих языковых пакетов в Windows не установлено:
lpksetup /u en-gb
lpksetup /u en-ca
Удаление лишнего языка в Windows 10 с помощью PowerShell
Удалить ненужный дополнительный язык можно только с помощью PowerShell.
- Запустите Windows PowerShellс правами администратора;
- Выведите список установленных в Windows 10 языков пользователя командой: Get-WinUserLanguageList

Если вы хотите оставить в Windows несколько языковых раскладок клавиатуры, можно удалить только ненужные языки. К примеру, вы хотите удалить языки с LanguageTag en-Gb и zh-Hans-CN.
$LanguageList = Get-WinUserLanguageList
$DeleteLang = $LanguageList | where LanguageTag -eq «en-Gb»
$LanguageList.Remove($DeleteLang)
Set-WinUserLanguageList $LanguageList –Force
Для удаления китайского языка, замените вторую строку на:
$DeleteLang = $LanguageList | where LanguageTag -eq «zh-Hans-CN»
Или вы можете указать список языков, которые нужно оставить:
Set-WinUserLanguageList $1
Закройте консоль PowerShell и убедитесь, что все лишние языки в языковой панели Windows исчезли.
Как удалить лишнюю языковую раскладку через реестр Windows?
Если дополнительные языки удалились из списка языков ввода, но все еще отображаются в раскладках клавиатуры, нужно вручную удалить их из реестра.

- Запустите regedit.exe с правами администратора;
- Перейдите в ветку реестра HKEY_USERS\.DEFAULT\Keyboard Layout\Preload . Здесь отображается список языков, доступных на экране входа в систему;
- В ветке HKEY_CURRENT_USER\Keyboard Layout\Preload отображаются активные раскладки клавиатуры текущего пользователя. Например, 00000419 – русская раскладка, 0000409 – английская раскладка, 00000407 – немецкий и т.д.;
- Удалите все ненужные языковые раскладки из реестра. Если нужно, измените нумерацию параметров реестра (названия параметров должны быть последовательными и начинаться с 1).
После этого ненужный язык пропадет из списка языков ввода.
Если дополнительные раскладки клавиатуры появляются на рабочем столе в удаленной RDP/RDS сессии, вы можете заблокировать передачу локальных раскладок клавиатуры на удаленном хосте с помощью параметра реестра:
REG ADD «HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layout» /v IgnoreRemoteKeyboardLayout /t REG_DWORD /d 1
Если вы уверены, что вам не нужна определенная раскладка, вы можете ее полностью заблокировать. Полный список раскладок клавиатуры хранится в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\.
Например, вы хотите заблокировать языковую раскладку 00000404 (Chinese (Traditional) — US Keyboard) .

- Сначала удалите лишние языки с помощью PowerShell (описано выше);
- Найдите подраздел 00000404 в указанной ветке реестра и переименуйте его в 00000404-no;
- Перезагрузите Windows;
- Проверьте, что указанная раскладка клавиатуры больше не отображается.
Предыдущая статья Следующая статья
Как удалить языки в Windows 10
Привет, друзья. Windows обустроена так, что не все языки из неё можно удалить. Можно сколь угодно переводить интерфейс системы на другой язык, сколь угодно менять локационные сведения, но текущий язык системы и тот, который значился в её дистрибутиве или который указывался при установке в мультиязычных сборках, удалить юзабильным способом с использованием привычных системных настроек не удастся. А после обновления Windows 10 до April 2018 Update добавилась ещё одна проблема – региональные языковые пакеты в виде системных одних языков, но с раскладками клавиатуры других языков. Как удалить из Windows 10 ненужный язык, который не удаляется с использованием привычных системных средств?
↑ Как удалить языки в Windows 10
↑ 1. Альтернативное средство удаления языков в Windows 10
После внедрения April 2018 Update из панели управления «Десятки» исчезли языковые настройки. Теперь приложение «Параметры» — это единственное место, где предоставляется возможность юзабильной работы с языковыми настройками. Об этом мы уже говорили немногим ранее, в статье о том, как работать с языками в новых условиях Windows 10 April 2018 Update. Если ненужный язык не удаляется из-за проблем в работе приложения «Параметры» или из-за каких-то системных ошибок, можно прибегнуть к ещё оставшейся в системе альтернативе – к штатной утилите lpksetup. Запускаем её с помощью команды «Выполнить».

Выбираем «Удалить языки интерфейса».
![]()
Галочкой отмечаем, какой нужно удалить. Жмём «Далее».
![]()
И пробуем так вот удалить ненужный язык. Но, друзья, это всего лишь альтернатива функционалу управления языковыми пакетами в приложении «Параметры». Этот способ не решает вопрос с удалением упомянутых выше региональных языковых пакетов. Утилита lpksetup просто не увидит такие пакеты как отдельные системные языки. С ними придётся разбираться другими методами.
↑ 2. Региональные языковые пакеты в Windows 10
В среде Windows 10, обновлённой до April 2018 Update, кроме основного русскоязычного пакета, возможно существование дополнительных пакетов с русским языком для других стран – Украины, Молдовы, Казахстана, Беларуси и пр. Такие пакеты предусматривают в качестве системного языка русский, а в качестве раскладки – символику выбранной страны. Т.е. системный интерфейс (названия приложений, настроек, уведомлений) отображается на русском, а ввод с клавиатуры осуществляется на украинском, молдавском, белорусском и т.д. Такие региональные пакеты с нашим участием добавляются точно так же, как и обычные языковые пакеты.
![]()
Но в отдельных случаях они могут и сами появиться в системе. Региональные пакеты – это, по сути, аналог добавления раскладок других стран. Вот только проблемный этот аналог какой-то получается. Во-первых, глядя на языковую панель в системном трее, не поймёшь, какой из методов ввода сейчас активен – русский или другой страны. И тот, и тот отображаются как «РУС». Во-вторых, единожды установив русскоязычный пакет для другой страны, больше не сможем от него избавиться. Откроем языковые настройки Windows 10.
![]()
Для русскоязычного пакета другой страны недоступна функция удаления.
![]()
Региональный русский намертво приклеивается к системе и не удаляется даже при переводе языка системы на английский или любой другой язык. Поскольку русский – это язык дистрибутива Windows. С остальными языками ситуация аналогичная: английский, испанский, арабский и прочие распространённые языки существуют не только в виде основного языкового пакета, но также в виде дополнительных региональных пакетов для стран, где на этих языках говорят.
Избавиться от региональных языковых пакетов можно двумя способами:
• Первый – ненужный язык можно с помощью правки реестра убрать из методов ввода, чтобы он впустую не болтался при переключении раскладок;
• Второй – ненужный язык можно полностью удалить из системы с помощью PowerShell.
Смотрите далее, друзья, и выбирайте, какой из способов вам больше нравится. Ну или какой из них сработает.
↑ 3. Как убрать из методов ввода неудаляемый язык с помощью реестра
Если мы уберём региональный язык из методов ввода, он не исчезнет из приложения «Параметры», но он не будет отображаться на языковой панели в системном трее. Ну и, соответственно, не будет мешать при переключении языков и раскладок в процессе набора текста. Делается это с помощью реестра Windows.
Открыв редактор реестра, в первую очередь экспортируем его состояние. Экспорт реестра может пригодиться, если вдруг понадобится вернуть всё назад.

Далее раскрываем путь:
Компьютер\HKEY_CURRENT_USER\Keyboard Layout\Preload
В папке «Preload» в нашем случае имеется три пункта:
• Параметр 1 со значением 00000419 – это метод ввода основного русского;
• Параметр 2 со значением 00000409 – это метод ввода английского;
• Параметр 3 со значением 00002000 – это метод ввода украинского, того самого неудаляемого регионального языка.
Последний параметр нам, собственно, и нужно удалить.

Если в системе языков и раскладок установлено больше, чтобы не ошибиться, можно либо на время убрать их, либо найти по их значению справку в Интернете. Но даже ошибившись, помним об экспорте состояния реестра. Просто импортируем REG-файл и делаем всё по новой.
После проделанной операции перезаходим в систему. В методах ввода больше не должно быть лишнего языка, который мы убрали с помощью реестра. Кстати, мы его больше не сможем установить из магазина Microsoft Store.
↑ 4. Как удалить неудаляемый язык с помощью PowerShell
Для полного удаления неудаляемого языка запускаем от имени администратора PowerShell. Сначала нам нужно отобразить перечень установленных в системе языков. Вводим команду:
Как удалить неудаляемые языки и раскладки клавиатуры в Windows
В чате @winsiders участник Kato пожаловался на необычную проблему после обновления до Windows 10 1803. Изначально у него в системе было три языка – английский (US), русский и украинский, а после обновления добавилось еще два английских – United Kingdom и Canada, которые не удалялись в Параметрах (кнопка Remove недоступна). Соответственно, эти языки появлялись в списке раскладок клавиатуры, хотя в настройках их не было.

[+] Сегодня в программе
- Теория
- Удаление неудаялемых языков
- Удаление неудаялемых раскладок клавиатуры
- Игнорирование дистанционных раскладок
- Удаление раскладок из разделов Preload
- Удаление раскладок из системы
- Удаление раскладки после смены кодовой страницы
Теория
В общем случае, можно удалить любой язык, который не используется по умолчанию. Например, если в системе только английский и русский языки, то первый можно удалить, если основным назначен второй. При этом неважно, каким был исходный язык системы (дистрибутива), что легко определяется в PowerShell командой:
(Get-CimInstance Win32_OperatingSystem).oslanguage
Команда выводит идентификатор языка, где 1033 – английский (US), 1049 – русский, остальные тут в десятичном виде или у Microsoft в шестнадцатеричном (вставляйте значения в калькулятор программиста).
На проблемной ОС эта команда выдала 2057, что соответствует English (United Kingdom). В сочетании с картиной из параметров это было очень странно, потому что у языка дистрибутива никаких языковых пакетов быть не должно, поскольку он и так есть в системе.
Для начала мы попытались удалить языковые пакеты UK и Canada командами lpksetup. Однако к успеху это ни привело, что намекало на фактические отсутствие этих языковых пакетов, но не приближало к решению проблемы фантомных языков. Пришлось зайти с черного хода.
Удаление неудаялемых языков
У PowerShell есть два командлета для управления языками пользователя – Get-WinUserLanguageList и Set-WinUserLanguageList. Первый умеет получать список языков, а второй задавать его. В PowerShell список соответствовал картине в параметрах.

Из справки второго командлета не вполне очевидно, как удалить ненужные языки. Зато она дает достаточно толстый намек на то, что вывод первого командлета представляет собой массив. Это можно использовать во благо. Нам нужны только первые три языка из списка.
$List = Get-WinUserLanguageList Set-WinUserLanguageList $($list[0], $list[1], $list[2]) -Force Get-WinUserLanguageList
Первая команда помещает в переменную массив из списка языков, а вторая задает в качестве текущих языков первые три элемента массива. При этом остальные языки удаляются! Третья команда выводит список языков для проверки.

Решено! В который уже раз PowerShell позволяет элегантно решить задачу без запредельных усилий. Если будете экспериментировать под учетной записью Microsoft, отключите синхронизацию языковых параметров во избежание нежелательных эффектов (я словил несколько странностей :).
Удаление неудаялемых раскладок клавиатуры
Этот раздел был добавлен значительно позже, потому что в статью приходят люди со смежной проблемой — появление фантомных раскладок клавиатуры при отсутствии соответствующих установленных языков. У этой проблемы может быть несколько вариантов решения.
Игнорирование дистанционных раскладок
Примените твик и перезагрузитесь. См. также пост в канале Telegram с кратким объяснением и готовым REG-файлом.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "IgnoreRemoteKeyboardLayout"=dword:00000001
Удаление раскладок из разделов Preload
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload HKEY_CURRENT_USER\Keyboard Layout\Preload
Удаление раскладок из системы
Это подходит в случае, если раскладка не нужна в принципе. Раскладки прописаны в разделе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\
Нужно удалять подраздел с нежелательной раскладкой.
Удаление раскладки после смены кодовой страницы (языка для неюникодных программ)
В современных Windows при смене кодовой страницы (например, с английской на русскую) автоматически добавляется для всех пользователей и метод ввода этого языка. Причем сам язык не добавляется! Однако в большинстве случаев этот язык уже установлен у пользователей, поэтому они ничего не замечают. Но бывает иначе. Варианты решения:
- Добавить в параметрах такой же язык, как установлен для кодовой страницы, а затем удалить его. В результате удаляется и ненужная раскладка. Самый простой способ, но у одного из читателей после перезагрузки раскладка возвращалась.
- Добавлять и тут же удалять язык скриптом из автозагрузки. Прием против лома — возвращения раскладки после перезагрузки.
- Заменить в языке проблемный метод ввода не несуществующий. Элегантное решение, недоступное в графическом интерфейсе.
В Windows 10 1803 языковые настройки практически полностью перекочевали из классической панели управления в Параметры (исключение составляет классическое окно с настройками сочетаний клавиш и языковой панели). В связи с этим я обновил статью про 6 языковых настроек, которые могут поставить вас в тупик в контексте изменившегося интерфейса.
Об авторе
Вадим — владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.
Вас также может заинтересовать:
- Нюансы полной локализации Windows с помощью PowerShell
- Как удалить неудаляемый файл или папку
- Трюки управления языковыми параметрами из PowerShell и командной строки
- Как грамотно настроить язык ввода на экране входа в Windows
- Как грамотно настроить язык интерфейса Windows, магазинных приложений и ввода по умолчанию
- Как удалить неудаляемый драйвер в Windows
- PowerShell: парсинг веб-страниц и загрузка файлов с Invoke-WebRequest
- 8 полезных возможностей PowerShell 5.0, о которых вы могли и не знать
- Как массово переименовать файлы по маске в PowerShell
- 6 языковых настроек Windows, которые могут поставить вас в тупик
Я в Telegram
Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.
комментариев 9
Да, наверное этот способ более понятный(наглядный) чем на Ансверс. https://answers.microsoft.com/thread/699a81c6-3d5e-4c0a-88e1-6b0b1b1e2e0c Добавил ссылку на статью. Есть еще очень простой способ решить проблему. Но срабатывает не всегда.
1) Перелогиниваемся.
2) Делаем полное выключение компьютера(Пуск>Выключение>Удерживая Shift, Завершение работы).Ваша оценка:
0На момент решения задачи никакого способа на Answers не было https://i.imgur.com/R7Kapr8.png
И да, я обошелся двумя командами вместо четырех 🙂Ваша оценка:
+1Простите за оффтоп, но может подскажите как изменить системный шрифт, который в новой панели управления и не только в ней. Меня он раздражает, какой-то он нечеткий.
Ваша оценка:
0Если не оффтопить, то и извиняться не надо будет. Пишите в http://www.forum.oszone.net
Ваша оценка:
+1В моем случае на ноутбуке было настроено несколько учетных записей пользователей (Администратор — локальная учетная запись, и 2 пользователя — доменная учетная запись). Я сделал все, как в статье под одним из пользователей, все сработало, но когда вошел под другим, то в Панели задач и в Параметрах у него остался язык Русский (Молдова), который у 1-го пользователя перед этим удалился. Мне пришлось повторить процедуру, но запуск PowerShell я сделал НЕ от имени Администратора, а просто под пользователем, т.к. иначе команда Get-WinUserLanguageList не выводила 3-ий язык.
Ваша оценка:
0xupomant: Мне пришлось повторить процедуру, но запуск PowerShell я сделал НЕ от имени Администратора, а просто под пользователем, т.к. иначе команда Get-WinUserLanguageList не выводила 3-ий язык.
Хорошее замечание. Я нигде не писал, что PowerShell нужно запускать от имени администратора, потому что это пользовательские настройки. Но да, на скриншотах именно администратор, так получилось 🙂
Ваша оценка:
0у меня сходная, но не совсем та же проблема. windows 10 (build 1709). имеются три языковые вкладки: французская, русская и японская. всякий раз, когда я перегружаю комп, к имеющимся добавляется английская (сша), при этом в списке вкладок ее не видно, и команда Get-WinUserLanguageList ее не отображает (будучи запущенной как из-под текущего юзера, так и из-под админа). американская вкладка удаляется вручную: для этого я ее сначала добавляю, а потом удаляю. но это достает неимоверно. надеялся, что с помощью данной статьи проблему порешаю. не порешал. буду копать дальше. http://ixbt.photo/photo/236831/60113Rs0i9exC9d/1226332w.jpg
Ваша оценка:
0Я видел похожую проблему, раскладка подгружалась из
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
и восстанавливалась при перезагрузке. До конца не дорешали, но это может быть следствием синхронизации языков. Мой последний совет был удалить проблемную раскладку из реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\
предварительно сделав резервную копию разделаВаша оценка:
0
- nett00n12.11.2020 в 12:53
Помогла очистка лишних раскладок в
HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
Но ещё закешировалось в
HKEY_CURRENT_USER\Keyboard Layout\Preload
Ваша оценка:
0