22

Как удалить пользовательскую раскладку клавиатуры в Windows?

Если раскладка клавиатуры была установлена с помощью установщика Windows, вы обычно удаляете ее, используя ее запись в диалоговом окне « Установка и удаление программ ».

Настраиваемая раскладка клавиатуры, которую я хочу удалить, была установлена с помощью установщика Windows (.msi). Из-за проблемы установщика у него нет записи в диалоговом окне « Установка и удаление программ ». Однако он отображается в раскрывающемся списке клавиатуры в диалоговом окне « Параметры клавиатуры и языка ». Я хочу удалить его из этого списка, так как у этого конкретного макета есть некоторые проблемы.

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

5 ответов5

24

у тебя все еще есть .msi? Возможно, вы можете запустить его с msiexec /u? Или переустановите его снова?

По сути, должно быть невозможным, чтобы MSI-файл не создавал запись удаления (и не будет отменен при попытке установить любой другой MSI-файл). Если вы удалили запись удаления вручную, вы все равно можете удалить ее через msiexec /u, но вам нужно будет найти GUID установщика для этого (что может быть трудно найти, если у вас установлено много файлов ...)

Если это не удается: сами записи находятся в реестре по адресу HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts , так что вы можете по крайней мере удалить запись для своего макета (если не удалите DLL и прочее).

7

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

  1. Обратите внимание на тот же DLL-файл, который вы установили с помощью MSI.
  2. Найдите его на локальном диске и удалите вхождение в sys32.
  3. Откройте редактор реестра и перейдите в HKLM\System\CurrentControlSet\Control\Keyboard Layouts
  4. Просмотрите все подпапки, пока не найдете тот, который ссылается на вашу пользовательскую DLL
  5. Удалить подпапку
  6. Перезагрузите машину

После того, как вы очиститесь, вы можете переустановить обновленную версию вашего макета с тем же именем DLL без каких-либо конфликтующих проблем.

2

Попался.

Это будет раздел реестра в разделе HKLM\System\CurrentControlSet\Control\Keyboard Layouts .

Так как это пользовательский макет, вам придется просмотреть все подпапки, чтобы найти его.

Примечание. Prudence требует создать резервную копию (щелкнуть правой кнопкой мыши> экспортировать) перед удалением папки из реестра. :)

2

Перейдите в каталог установки((Drive):\Users\(Username)\Documents\(Layout Name (like US-PS))\setup.exe): откройте установку. У него будет 2 варианта, просто выберите первый ("Удалить раскладку клавиатуры"), подождите, пока он не будет удален, и вы удалите его. Я только что сделал это.

1

Я верю, что знаю, почему это произошло. Создатель делает несколько .msi для различных архитектур и setup.exe . Если вы запускаете один из этих .msi напрямую, деинсталлятор не создается. Вам следует использовать созданный setup.exe .

Простое решение, как говорит mihi: запустить .msi с флагом /uninstall .

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