Рейтинг@Mail.ru

Как убрать лишний язык раскладку Windows

В общем, проблема состояла в том что появлялся “фантомный язык”, в языковой панели он был (в моём случае немецкий, но может быть украинский и т. д., короче раскладка родного языка системы), а в настройках языка его не было.


Если добавить его в настройках языка и потом удалить то он пропадал, но после перезагрузки появлялся вновь. Стоит отметить что есть три разных типа проблем с языковой панелью, это одна из них. Начал я поиски, наткнулся на офф гайд майкрософта, где они “решают” проблему через языковой интерфейс панели управления, КОТОРЫЙ ОНИ УДАЛИЛИ В ОДНОМ ИЗ ОБНОВЛЕНИЙ. Отлично подумал я, и пошёл на другой офф гайд майкрософта, там они просто шаблонно дали совет сделать общие проверки компьютера через консоль, это естественно не помогло. Кстати, классический богоподобный интерфейс всё ещё можно вызвать командой lpksetup через win+R, его не удалили не смотря на то что удалили возможность его вызова через “часы язык и регион” (теперь просто “часы и регион”). Теперь к самому гайду. Что бы посмотреть список активных языков ввода есть команда в powershell “Get-WinUserLanguageList” (пикча 1), это массив данных, в котором каждый язык занимает свою ячейку, но важно то что каждый язык имеет свой код, для русского это 00000419, для английского 00000409. Однако, когда этот “фантомный язык” был у меня в языковой панели, в Get-WinUserLanguageList его не было, то есть через консоль его нельзя просто удалить. Действительно добавив немецкий в систему через языковые настройки, я узнал что у него код 00000407. Пошел я в реестр по пути “HKEY_CURRENT_USER\Keyboard Layout\Preload”, глянуть какие там языки добавлены, всё было нормально, только два параметра нужных мне языков (пикча 2), природа появления этого языка стала ещё интереснее. После, глянул дефолты по пути “HKEY_USERS\.DEFAULT\Keyboard Layout\Preload”, там уже был третий параметр с 00000407. Я его удалил, перезагрузил комп, но фантомный язык появился, также вернулся и третий параметр. Стало понятно что его создаёт какой-то процесс, который остался с немецкого языкового пакета. Решил снести языковой пакет. Вот тут то и вылез “удобный” интерфейс (на деле кастрированный, с кучей пустого места обрубок), в нём этого сделать нельзя. В старом языковом интерфейсе можно было. В общем, используя команду lpksetup (пикча 3) увидел что немецкий это стандартный язык, идите нахер, удалить его нельзя. В общем, переходим в реестре по пути “Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Language” (пикча 4) и видим что InstallLanguage имеет параметр с кодом немецкого (0407). Походу винда не даёт окончательно удалить тот язык, который был выбран при установке винды. Что ж, внушаем что она была установлена с русским языком изменяя параметр на 0419. Теперь через lpksetup можно удалить немецкий и нельзя удалить русский. Хоть это и не помогло избавится от фантомного языка, я думаю это полезный факт. А теперь разгадка тайны. Оказалось что третий параметр в дефолтах создавал ЭКРАН ПРИВЕТСТВИЯ. У меня стоит пароль для входа в систему, и видимо для этого он включал стандартный язык через дефолты, но не включал его через основную систему языковой панели (погромисты, блеать). Что бы это исправить надо зайти в “административные языковые параметры”(пикча 5), после в “копировать параметры” (пикча 6) и там поставить две галочки (пикча 7). После этого всё стало нормально, третий параметр в дефолтах удалился сразу, без перезагрузки, фантомный язык исчез после перезагрузки.