2016-06-22 13:36:38 +0000 2016-06-22 13:36:38 +0000
121
121

Как предотвратить автоматическое добавление раскладок клавиатуры в Windows 10 (т.е. US-клавиатуры)

Обновление: это длинное сообщение, вы можете [ перейти прямо к ответу ниже ]0x3 и 0x2 и 0x2 и * * * * 0x2 и 0x2 и *Заметка: * Список быстрых языков относится к списку на скриншоте ниже, доступен через ярлык Win + пробел

У меня в системе есть два языка для проверки орфографии окон, Английский (Соединенные Штаты) и Французский (Швейцария), но несмотря на то, что оба языка правильно настроены с клавиатурой ввода “Swiss French”, Ввод “US Keyboard ” продолжает появляться в этом списке:

Вот настройки для Английского (США) языка, видно, что единственный ввод - “швейцарский французский”:

То же самое для Français (Suisse), единственный ввод - “Swiss French”:

В панели управления оба параметра также установлены как “швейцарский французский”:

Все мои настройки настроены на использование “списка языков”:

Вот несколько вещей, которые я уже пробовал:

  • Мне уже удалось удалить его с помощью гимнастики некоторых языковых настроек, добавив и удалив языки, в конечном итоге он всегда возвращается
  • я уже сделал это: https://superuser.com/a/484595/168632
  • В моих настройках реестра тоже нет упоминания об US Keyboard:

Пожалуйста, помогите, я в отчаянии, это мой третий компьютер с Windows 10, и все они делают одно и то же.

Ответы (10)

107
107
107
2016-06-29 14:00:54 +0000

Чтобы исправить эту проблему, удалите реестровую папку Preload и выйдите из нее или перезагрузите компьютер:

HKEY_USERS\.DEFAULT\Keyboard Layout\Preload

Похоже, что эта папка - некий унаследованный остаток, который содержит раскладку клавиатуры, не указанную пользователем, для добавления в список языков при входе пользователя в систему. Пока само исправление работает через перезагрузки, во время написания есть вещи, которые возвращают, что досадно папку , вот несколько, на которые я наткнулся лично:

  • Удаленный рабочий стол на компьютер с американской компоновкой
  • Использование той же учетной записи Microsoft на другом ПК, на котором все еще есть эта проблема

Всякий раз, когда проблема возвращается, эту папку реестра нужно снова удалить.

Правка 2: Благодаря предложению @Lu55, вот удобная единая ссылка для использования в командной строке с правами администратора:

reg delete "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /f

Правка: Я создал текстовый файл RemovePreload.reg со следующим содержимым, таким образом, это исправление можно легко применить каждый раз без навигации по реестру:

Windows Registry Editor Version 5.00

[-HKEY_USERS\.DEFAULT\Keyboard Layout\Preload]

Чтобы использовать это, сохраните его в текстовом файле и измените расширение с .txt на .reg. Затем, когда он вернется, вы можете просто дважды щелкнуть на нем и перезапустить или выйти из системы.

61
61
61
2017-01-28 11:03:27 +0000

На самом деле, решение довольно простое и не требует редактирования реестра! 0x2 и - Перейдите к Region and Language (ранее названные языковые предпочтения), нажмите на English (United States) и перейдите к Options.

  • если вы видите там “US Keyboard”, удалите его, и все готово.

  • HOWEVER, если вы не видите там “US Keyboard”, нажмите Add a keyboard , добавьте “US keyboard”, затем удалите эту клавиатуру, и все готово.

Я понял это после некоторых проб и ошибок, пробуя разные вещи, у меня была одна и та же проблема.

7
7
7
2019-07-14 17:17:25 +0000

Я нашел ответ через час после начала строительства:

OS Name: Microsoft Windows 10 Pro
OS Version: 10.0.18362 N/A Build 18362
  1. Это сработает даже после перезапуска.
  2. Это легко сделать. И установить навсегда.
  3. Это остановит создание любых других языков для новых пользователей.
  4. Он больше не будет показывать эти языки и на экране входа в систему.
  5. Никаких взломов реестра, которые не сработали бы после перезагрузки.

Вы также можете пройти ( but sure to check your language settings first - см. скриншоты ниже ).

Панель управленияРегион → Административная вкладка → Скопировать настройки…


Вот шаг в изображениях с пометками также для справки.

Тогда ваш реестр должен выглядеть так, только с одной предварительной загрузкой.

Скопируйте эти Computer\HKEY_USERS\.DEFAULT\Keyboard Layout\Preload в адресную строку редактора реестра, чтобы перейти прямо к ним и проверить все самостоятельно.

6
6
6
2018-01-07 23:28:03 +0000

Это не постоянное исправление, а удобный пакетный файл, который добавляет en-US раскладку клавиатуры и затем удаляет ее. (Вы должны сначала добавить его, чтобы иметь возможность удалить его.)

Remove_en-US.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend">

    <!--User List-->
    <gs:UserList>
        <gs:User UserID="Current"/>
    </gs:UserList>

    <!--input preferences--> 
    <gs:InputPreferences>
        <!--add en-US keyboard input-->
        <gs:InputLanguageID Action="add" ID="0409:00000409"/>
        <!--remove en-US keyboard input-->
        <gs:InputLanguageID Action="remove" ID="0409:00000409"/>
    </gs:InputPreferences>

</gs:GlobalizationServices>

Remove_en-US.bat:

control intl.cpl,, /f:"%CD%\Remove_en-US.xml"

Тогда вы можете просто запустить Remove_en-US.bat, чтобы удалить макет. У меня есть ярлык на этот пакетный файл и в моих программах запуска.

Здесь 0409 - это значения раскладки клавиатуры locale ID и 00000409 - это значения раскладки клавиатуры. Список locale ID:keyboard layout value см. в https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh825682(v=win.10) .

5
5
5
2016-06-22 13:44:11 +0000

Theres - два места для настройки клавиатуры в окнах 10, панель управления -> Язык

Другое место в настройках так же, как и ваш скриншот

Делает изменения там тоже, это должно исправить проблему.

4
4
4
2016-09-20 19:25:53 +0000

У меня не было 409 записей в реестре (см. принятый ответ). Шаги, которые я предпринял, чтобы удалить английский (США) из меню быстрого выбора:

1 Откройте “Языковые настройки” из меню быстрого выбора. 2. Добавить английский (США) язык. 3. Удалить английский (США) язык.

Совет: В панели управления Panel\All Настройки Items\Language\Advanced -> Изменение горячих клавиш языковой панели можно установить для параметра “Между языками ввода” значение “(Нет)”, чтобы избежать случайного переключения раскладки клавиатуры.

2
2
2
2017-12-24 15:27:09 +0000

Ответ Микеля выше исправляет this…., но на всякий случай, если он снова появится для вас (как и для меня): Возможно, у вас есть заказная комбинация клавиш AutoHotkey для изменения раскладки клавиатуры?

Проблема заключалась в том, что мой скрипт AutoHotkey содержал следующие строки кода:

; This should be replaced by whatever your native language is. See 
; http://msdn.microsoft.com/en-us/library/dd318693%28v=vs.85%29.aspx
; for the language identifiers list.
el := DllCall("LoadKeyboardLayout", "Str", "00000408", "Int", 1)
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1

Так что в то время как на моем рабочем столе это будет работать красиво и переключаться с английской (раскладка клавиатуры в Великобритании) на греческую (раскладка GR клавиатуры) и наоборот, на моем ноутбуке, который имеет американскую клавиатуру, этот скрипт будет отвечать за дополнительные раскладки, появляющиеся из ниоткуда на моем переключателе языков.

Надеюсь, это поможет!

2
2
2
2017-09-21 09:56:55 +0000
  1. Панель управления
  2. Часы, язык и регион
  3. Язык
  4. Изменение методов ввода
  5. Расширенные настройки
  6. Переопределение метода ввода по умолчанию
  7. Выберите предпочитаемую вами раскладку (вместо “Списка Использовать язык”)
  8. Сохранить

.

1
1
1
2018-08-10 19:20:53 +0000

На самом деле, похоже, что проблема еще и с тем же ключом под вашим реальным профилем пользователя (HKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload), а не только с HKEY_USERS\.DEFAULT\Keyboard Layout\Preload.

я могу реплицировать это довольно последовательно - когда я добавляю ключ 00000429 (персидский), например, туда и перезагружаю, я получаю персидскую клавиатуру автоматически, а когда я удаляю ее и перезагружаю, персидского больше там нет.

В общем, вы можете быть уверены, что у вас нет нежелательных языков ни в HKEY_USERS\.DEFAULT\Keyboard Layout\Preload, ни в HKEY_USERS\S-1-5-21-...\Keyboard Layout\Preload.

1
1
1
2018-12-08 17:14:33 +0000

В юбилейном выпуске Windows 10 появилась новая “функция”, в которой предполагается, что и региональные, и языковые настройки поставляются с обязательной раскладкой клавиатуры. Эти раскладки не могут быть удалены с помощью настроек GUI.

Но я смог преодолеть это с помощью PowerShell с помощью такого сценария:

$1=New-WinUserLanguageList en-US
$1.Add("nl-NL")
$1.Add("de-DE")
Set-WinUserLanguageList $1

Копировать-вставить его в окно PowerShell.

Демонстрация выше настраивает US верстку по умолчанию с дополнительными NL и BE верстками. Настройте по мере необходимости.

Похожие вопросы

3
19
10
28
10