Given “part II” of this Keyboard Remapping bit, it became obvious to me that I would be spending more and more time hacking the Registry, just to remap keys, especially with my ThinkPad. Even though IBM gave me an application to change keys, and Microsoft gave me IntelliType utilities, both meant that drivers would have to be loaded, and that sorta irked me for some reasons… call it a throw back to the days of TSR programs, but I get “itchy feet” when I have to leave unnecessary drivers loaded.
The nice thing about this is that I’m not doing much of anything; I’m just exposing work that Microsoft has done for us. As should be no surprise to anyone by now, there’s a Registry hack that allows you to map one key to another within Windows 2000, Windows XP, and Windows Server 2003. Nice thing about that is that there’s no extra drivers that need to be loaded – it’s built into Windows. Bad thing about that is that it’s a bit of a bugger, finding the scan codes for the keys you want to remap, and then getting all of the values right. Not impossible, given that it’s been done before, but it is a pain in the ass.
Enter SharpKeys. It’s an interactive Registry hack and it’s simple. Open SharpKeys and it reads in the current value of the “magic” Registry value. Make whatever changes you want and you can write this back out to your Registry. Reboot (or log out and back in – that sometimes works) and you’re done: the remapped keys should be working now.
Should be working? Yeah, should be working. Some of the newer keyboards have funky extra keys and while I tried to get a bunch of them, I’m pretty sure that they all won’t work – I’m hoping for most of them to work. If you know of a special key’s code that is on many keyboards, please e-mail me with it – I can add it in future releases… of course, if you know the scan code, you probably have no need for this hack in the first place!
Beyond that, here’s the obvious: Use this at your own risk! As much as I’d love to write perfect code, I know that I never do and this is something that’s in a very “dangerous” part of your computer. OK, so my code is 99.44% accurate most times, but still. [insert gacking sound here] If you aren’t comfortable with it, don’t use it, especially when it’s in beta! In spite of having said this, I don’t expect many problems with it – I’m just trying to be honest with everyone out there. Also you must have version 1.1 of the .NET Framework installed for this to be used. Lastly, I’m told that this Registry hack only works with Windows 2000, Windows XP, and Windows Server 2003 – if anyone tries it and finds that it works on 95/98/Me, please let me know.
And finally, here’s the bits you’ve been reading all this for:
Main page: SharpKeys information
Read: SharpKeys FAQ