Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

How to delete a custom keyboard layout in Windows?

If the keyboard layout was installed using a Windows installer, you would normally uninstall it using its entry in the Add/Remove Programs dialog.

The custom keyboard layout I want to delete was installed using a Windows installer (.msi). Due to an installer problem, it does not have an entry in the Add/Remove Programs dialog. However, it appears in the keyboard drop-down list in the Keyboard And Language Options dialog. I want to remove it from this list since this particular layout has some problems.

If you are curious how this happened: I was playing around with the Microsoft Keyboard Layout Creator tool. I created an installer for my custom keyboard layout and some things got screwed up over multiple install-uninstall testing sessions of this layout.

share|improve this question

5 Answers 5

up vote 10 down vote accepted

do you still have the .msi? Perhaps you can run it with msiexec /u? Or re-install it again?

Basically, it should be impossible that a .msi does not create an uninstall entry (and will not be rolled back when you try to install any other .msi). If you removed the uninstall entry manually, you can still uninstall it via msiexec /u, but you will need to find the installer GUID for that (which can be hard to find if you have a lot of stuff installed...)

If that fails: The entries themselves are in the registry at HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts, so you can at least remove the entry for your layout (if not uninstall the .dll and stuff).

share|improve this answer
2  
Thanks, I was able to delete it by finding it in the above Registry location. :-) –  Ashwin Aug 29 '09 at 1:50
    
Thanks for this answer. I needed that! The command line thingy would be msiexec /u (filename).msi right? That didn't do anything for me - no error messages, nothing got uninstalled etc - so I had to do it the hard way too. Oh well. –  Mr Lister Aug 19 '12 at 18:34
    
seems that some Windows Installer versions prefer msiexec /x (filename).msi instead. But you should at least get an error message. –  mihi Aug 20 '12 at 17:25

I have done the exact same thing once, if you can't uninstall with the msi follow this:

  1. Note the same of the .dll you installed with the msi
  2. Search it on the local drive and delete the occurrence in sys32
  3. Open the registry editor and go to HKLM\System\CurrentControlSet\Control\Keyboard Layouts
  4. Browse all the sub-folders until you find the one that reference your custom dll
  5. Delete the sub-folder
  6. Reboot the machine

After that you're clean, you can reinstall the updated version of your layout with the same dll name without any conflicting issues.

share|improve this answer

Gotcha.

That'd be a registry key under HKLM\System\CurrentControlSet\Control\Keyboard Layouts.

Since it is a custom layout, you'll have to go through all subfolders to find it.

Note: Prudence demands to create a backup (right click > export) before you delete the folder from the registry. :)

share|improve this answer

Start > Control Panel > Regional and Language Options > Languages > Details

in the section 'Installed Services' highlight the Keyboard Layout in question and click Remove and then Apply/OK

share|improve this answer
2  
Molly: Please read my question again carefully. I want to remove the keyboard layout from the available list of layouts in Windows itself. –  Ashwin Aug 22 '09 at 16:21

I believe I know why this happened. The creator makes some .msis for various architectures and a setup.exe. If you run one of these .msis directly, no uninstaller is made. You should use the setup.exe created instead.

The easy solution is as mihi says: run the .msi with the /uninstall flag.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.