Disable the Insert Key in Windows

Almost anyone who has used a word processor has accidentally hit the Insert key and overwritten when they thought they were editing. This article describes a simple way to disable the Insert key on your keyboard.

Whenever you press a key, a windows message is created, which contains a key code that uniquely identifies the key pressed. Programmes (like Microsoft Word) look for keypress messages and take actions based on the key code in the message. By mapping the insert key press event to null, windows send a message containing null for the key code when the Insert key is pressed. Programmes receiving the message, therefore, do not perform the action associated with an insert key press event, freeing you from having to worry about overwriting things again.

Make sure you read the warnings section before you continue.

Steps

  1. Go to Start → Run → regedit
  2. Go to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout
  3. Right-click on the right half of the screen and choose New → Binary Value
  4. Name the new Value Scancode Map
  5. Enter 00 00 00 00  00 00 00 00  02 00 00 00  00 00 52 E0  00 00 00 00

  6. Close regedit
  7. Reboot.
  8. Optional: you can take the Insert key off of your keyboard when done.

How this works

  1. The first 4 bytes are header version information that should be 00000000
  2. The next 4 bytes are header flags, and should be 00000000
  3. The next 4 bytes are the number of key maps you are changing + 1 for the null terminator. In this case, you are just changing the Insert key, so this should be 2. Binary values are entered in little-endian format, so 0x02 becomes 02000000.
  4. The next 4 bytes show the old key map and the new key map. You are mapping the Insert key press (code E052) to null (0000). After converting to little-endian form, they become 52E0 and 0000. Combining them gives 000052E0.
  5. The last 4 bytes is the null terminator 00000000.
  6. You can disable (or remap) other keys by adapting this procedure and using the appropriate key codes.

Tips

  • Delete the value HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout\Scancode Map if you mess it up. Reboot and start over.
  • Remember to update the number of keymap fields if you disable or map more keys.
  • If you are using a non-standard keyboard (including laptop keyboards) look up the key scan codes, as they may be different.

Warnings

  • You must be computer literate to try this. If you mess this up, your keyboard may misbehave.
  • Do not confuse HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout with HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layouts (notice the plural).
  • You will need to reboot for the changes to take effect.
  • You should back up your data before making changes to the registry.
  • This affects all users on the computer. It cannot be applied on a per-user basis. Since the settings are stored in the registry, you can't change this behaviour by changing the keyboard.
  • If using the second method, be sure the key can be put back afterward.
  • You must have administrator privileges to do this.

Related Articles