13

Я использовал Microsoft Keyboard Layout Creator 1.4 для создания раскладки клавиатуры, которую я смог успешно установить. Проблема в том, что теперь я хочу обновить его, но не могу удалить старый.

Файл справки гласит:

.MSI не написан с учетом «Upgrade» или других подобных сценариев - целью была простота. Поэтому для обновления вы просто удалите старую клавиатуру и установите новую на место.

это также говорит:

Рисунок 4: Режим обслуживания позволяет восстановить или удалить раскладку клавиатуры.

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

Как удалить клавиатуру из системы, чтобы она не отображалась в Панели управления > Язык и региональные стандарты > Языки > Подробно ... > Добавить ... > Раскладка клавиатуры /IME:?

2 ответа2

15

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

  1. Перейти, чтобы добавить / удалить программы
  2. Найдите клавиатуру, она должна совпадать с именем поля описания свойств проекта в Keyboard Layout Creator.
  3. Нажмите Изменить
  4. Выберите Удалить раскладку клавиатуры.

Проблема заключалась в том, что я удалил его неправильно, и мне пришлось удалить его вручную.

Если вам нужно удалить его вручную, вот как я это сделал:

  1. Удалите клавиатуру из настроек языка и региональных настроек:
    1. Панель управления> Язык и региональные стандарты> Языки> Подробно ...
    2. Если он существует в качестве одной из установленных служб, его следует удалить. Вы можете сделать это, добавив другую клавиатуру (например, US) и сделав ее стандартной, а затем удалив клавиатуру, от которой вы пытаетесь избавиться.
  2. Открыть регедит
  3. Предупреждение: вы должны сделать резервную копию вашего реестра на случай, если вы случайно удалите что-то важное.
  4. Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\
  5. Найдите клавишу, которая представляет вашу клавиатуру: (в следующих шагах называемая "клавишей")
    • Он должен быть в форме XXXXXXXX (8-значное шестнадцатеричное число).
    • Каждый ключ должен иметь такие значения, как: отображаемое имя макета, файл макета, идентификатор макета, код продукта макета, текст макета.
    • Свойство Layout Text должно соответствовать выбранному вами имени клавиатуры.
    • Мой был ближе к концу и начал с a вместо 0 как и все остальные.
  6. Взгляните на файл макета, который должен иметь имя .dll . Я буду называть его "dll" в следующих шагах.
  7. Найдите dll в C:\WINDOWS\system32\dllcache и удалите его, если он существует.
  8. Найдите dll в C:\WINDOWS\system32 и удалите его, если он существует.
  9. Перейдите в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes и посмотрите, имеет ли он Name равное имени ключа (например, XXXXXXXX) и значение, например en . Если это так, удалите его.
  10. Вернитесь к ключу (с шага 5) и удалите весь ключ.
0

Вот шаги, которые помогли мне выйти из этой проблемы:

  • Удалите макет через установщик. Это удалит.Файлы DLL из соответствующих мест, но в реестре останется запись раскладки клавиатуры (и, возможно, библиотеки DLL, уже загруженные в системную память).
  • Выйти. На этом этапе реестр сам себя очистит.
  • Авторизоваться.
  • Перестройте и переустановите раскладку клавиатуры.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .