Most foolproof way is registry remapping. That's as low-level as it gets, and persistent until OS reinstall (or Registry changes, which never happens in practice). It's not hard to run, but making the script takes knowledge. You can however, use KeyTweak which is a GUI for registry remapping:
http://www.tucows.com/preview/327616/KeyTweak
The script can be made to remap the keys globally, or for your user only. The script below will do it globally but there's a line for current_user too as you can see so if that's better just switch. Save this as for instance 'RemapCaps2Back.reg' and run that to add it to your registry. It should be working after a restart.
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
; The next line maps the CapsLock key (003a) to a Backspace (000e)
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,0e,00,3a,00,00,00,00,00
; The next line removes all scancode remappings
;"Scancode Map"=-
[HKEY_CURRENT_USER\Keyboard Layout]
"Scancode Map"=-
; Numbers are LittleEndian (0x12345678 -> 78,56,34,12)
; ---------------------------------------------------------------------
; Bytes Meaning
; ---------------------------------------------------------------------
; 00 00 00 00 Version info (usually zero)
; 00 00 00 00 Flags (usually zero)
; 02 00 00 00 # of entries (# of mappings +1 for the terminator)
; 5c e0 1d e0 The RCtrl(e01d) key now sends a RWin(e05c) code (Lwin=e05b)
; 00 00 00 00 Null terminator (always zero)
To get rid of the evidence, use a script with a '-' remap line:
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
; The next lines remove any registry scancode remappings present
"Scancode Map"=-
[HKEY_CURRENT_USER\Keyboard Layout]
"Scancode Map"=-
Last edited by DreymaR (24-Feb-2015 16:17:36)