¿Cómo eliminar un diseño de teclado personalizado en Windows?

25

¿Cómo eliminar un diseño de teclado personalizado en Windows?

Si la distribución del teclado se instaló usando un instalador de Windows, normalmente la desinstalaría usando su entrada en el cuadro de diálogo Agregar o quitar programas .

El diseño de teclado personalizado que quiero eliminar se instaló utilizando un instalador de Windows ( .msi ). Debido a un problema del instalador, no tiene una entrada en el cuadro de diálogo Agregar o quitar programas . Sin embargo, aparece en la lista desplegable del teclado en el cuadro de diálogo Opciones de teclado e idioma . Quiero eliminarlo de esta lista ya que este diseño en particular tiene algunos problemas.

Si tiene curiosidad por cómo sucedió esto: estaba jugando con la herramienta Microsoft Keyboard Layout Creator . Creé un instalador para mi diseño de teclado personalizado y algunas cosas se arruinaron en varias sesiones de prueba de instalación-desinstalación de este diseño.

Ashwin Nanjappa
fuente
1
@ user2284570 - Pare, solo pare. Su edición agrega etiquetas irrelevantes.
Ramhound

Respuestas:

26

¿Todavía tienes el .msi? ¿Quizás puedas ejecutarlo msiexec /u? ¿O reinstalarlo de nuevo?

Básicamente, debería ser imposible que un .msi no cree una entrada de desinstalación (y no se revierta cuando intente instalar cualquier otro .msi). Si eliminó la entrada de desinstalación manualmente, aún puede desinstalarla a través de msiexec / u, pero necesitará encontrar el GUID del instalador para eso (que puede ser difícil de encontrar si tiene muchas cosas instaladas ...)

Si eso falla: las entradas mismas están en el registro en HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts, por lo que al menos puede eliminar la entrada de su diseño (si no, desinstale el .dll y demás).

mihi
fuente
2
Gracias, pude eliminarlo al encontrarlo en la ubicación del Registro anterior. :-)
Ashwin Nanjappa
Gracias por esta respuesta ¡Yo necesitaba eso! La línea de comando cosita estaría msiexec /u (filename).msibien? Eso no hizo nada por mí, sin mensajes de error, nada se desinstaló, etc., así que también tuve que hacerlo de la manera más difícil. Oh bien.
Sr. Lister el
Parece que algunas versiones de Windows Installer prefieren en su msiexec /x (filename).msilugar. Pero al menos debería recibir un mensaje de error.
mihi
En mi caso, después de desinstalar un diseño de teclado personalizado en Windows 10, la clave de registro no se eliminó a pesar de que se eliminó el archivo .dll al que apuntaba. Limpiar la clave de registro resolvió el problema.
shlgug
7

He hecho exactamente lo mismo una vez, si no puede desinstalar con el msi, siga esto:

  1. Tenga en cuenta lo mismo del .dll que instaló con el msi
  2. Búscalo en el disco local y elimina la aparición en sys32
  3. Abra el editor de registro y vaya a HKLM\System\CurrentControlSet\Control\Keyboard Layouts
  4. Examine todas las subcarpetas hasta encontrar la que hace referencia a su dll personalizado
  5. Eliminar la subcarpeta
  6. Reiniciar la máquina

Después de que esté limpio, puede reinstalar la versión actualizada de su diseño con el mismo nombre de dll sin problemas conflictivos.

Micro
fuente
2

Gotcha

Esa sería una clave de registro debajo HKLM\System\CurrentControlSet\Control\Keyboard Layouts.

Dado que es un diseño personalizado, tendrá que pasar por todas las subcarpetas para encontrarlo.

Nota: Prudence exige crear una copia de seguridad (clic derecho> exportar) antes de eliminar la carpeta del registro. :)

ctype.h
fuente
2

Vaya al directorio de configuración ( (Drive):\Users\(Username)\Documents\(Layout Name (like US-PS))\setup.exe): abra la configuración. Tendrá 2 opciones, solo seleccione la primera ("Eliminar la distribución del teclado"), espere hasta que se desinstale y la eliminará. Acabo de hacer eso.

usuario455764
fuente
1

Creo que sé por qué sucedió esto. El creador hace algunos .msis para varias arquitecturas y a setup.exe. Si ejecuta uno de estos .msis directamente, no se realiza ningún desinstalador. Deberías usar el setup.execreado en su lugar.

La solución fácil es como dice mihi: corre .msicon la /uninstallbandera.

Kevin Yin
fuente