SharpKeys 2.1.1

SharpKeys is a Registry hack that is used to make certain keys on a keyboard act like other keys. For example, if you accidentally hit Caps Lock often, you could use this utility to map Caps Lock to a Shift key or even turn it off completely. This official release includes support for up to 104 mappings, an extensive list of available keys, and a “Type Key” option to help when managing mappings. As it relies on internal support within Windows NT, Windows 2000, Windows XP, Windows Server 2003, or Windows Vista you must be running one of these OS’s for this Registry hack to work.

As a minor update from 2.1, version 2.1.1 addresses the new user security that is active in Windows Vista Beta 2. You’ll no longer have to explicitly run SharpKeys as an Administrator as you will automatically be prompted to do this whenever you run SharpKeys. For what it’s worth, this requirement is not SharpKeys’ fault: of the registry keys that SharpKeys needs for itself are stored in a part of the registiry that you will automatically have access to… it is the registry editing that SharpKeys performs for Windows that requires elevated access to work with.

This download is not required for users that are not running Windows Vista; nothing else has changed in this release.

Post navigation

297 thoughts on “SharpKeys 2.1.1”

Is SharpKeys reading the ScanCode of the key being typed corectly? I have a keyboard with a well-key (like a mouse with scroll). When I scroll it up — it’s indeed the UP key, repeating, down — the DOWN key, but when I press it (for eg. SharpKeys -> Add -> Type Key it says: “Function: F7”. Well, i have redefined that key to WinKey, LogOff then back. But now, when I press the wheel key it doesn’t do anything (for eg.: START menu should appear), and the F7 from Keyboard acts like WinKey properly.

I have to note that I want to assign the wheel key pressing to Enter or something, as without the driver it doesn’t do anything (with driver = task switch).

And another thing: without the driver, I launch Total Commander, press the wheel-key and the Make New Directory window appears — so indeed it must be an F7 key (wich do that action) sequence keycode somewhere.

I suspect that the ScanCode is not the complete one — it must be formed from a larger sequence of codes I think, for some keys. Also, the multimedia keys can’t be captured at all (when I press for eg. MUTE, My Computer, or any multimedia key, it does what it has to do — Mutes sounds, opens My Computer –, but the SharpKeys Type Key has lost focus. And neither I can’t capture the ALT keys, PrintScreen. The Pause/Break it says it’s NumLock. And the NumLock it says it’s the EURO sign.

Is there a way to correct the ScanCode in the SharpKeys? Or, maybe a better ideea: an option wich allows me to manualy enter the scan code in TypeKey window(s).

Well, it should be reading it OK. I mean I’ve used it for the up arrow and down arrow as well as for F7. I’m guessing that there’s some type of driver at work here and that it’s either sending a triple byte code which SharpKeys is known to not be happy with (nor the Scancode Map behind it) or there’s something very, VERY odd with your keyboard… like is it English? That could factor into it as well.

Having said that, per the FAQ, PrtScn is a special key (triple byte) and might not be recognized correctly. ALT gets trapped by Windows: you CAN re-map it but TypeKey doesn’t see it, so you have to pick that out of the list… I don’t know if you’d want to pick keys the other keys out of the same list though: I’d hate to see you remap keys and not be able to get them back!

Well, a shortcut wich deletes the SharpKeys registry info would be welcome then (for eg. program start with parameter -remove for deletion of Scancode Map registry entry). Or anyway, I have a mouse, start the program -> Delete All & then Write to Registry, LogOff and voila…

Apropo: In Win Safe Mode, SharpKeys registry entries are still in use by windows?

Thanx for answering!

P.S.: How/Where could I find a program that scans triple-byte-codes? I see on this page http://www.usnetizen.com/fix_capslock.html some triple-byte code keys. And of course, I need them to manualy enter them in you’r program as well…

Ok I want to remap the arrow keys to zx./ z=left x=down .=up /=right. Ive done this in the program and rebooted. The zx./ still type zx./ in windows, and the arrow keys type zx./ as well. I have lost all function of the arrow keys. Any ideas whats going on?

Sounds like you re-mapped the arrow keys to use zx./ rather than mapping the zx./ to arrows.

Delete all of the entries that you have so far, write the changes to the registry, reboot, and make sure you have zx./ on the left column and the arrow keys on the right column, when selecting keys again.

I’m a bit disappointed with this program, because what seemed to be a quick hack turns out to require the .Net Framework version 2.0.

I’m assuming you need it for your keycode scanning routines? Isn’t there any other way around it? I don’t exactly want to install the Framework only to mess around with the keys, as useful as that may be.

I’m not sure what the question is or what the disappoint comes from… I used the .NET Framework because C# allowed me to code this up in under a day. Then I did a bunch of “nice” work, like building the list of available keys, setting up TypeKey, the UI work, etc. It was the easiest way to code this application. Also, considering that the Framework is available from Windows Update, it’s easy to get – much easier than having to deal with other types of runtime. If the gripe is over the size of the Framework or not wanting a collection of libraries that you usually wouldn’t use on the box, I can’t help you. HDD’s are priced at about $0.70/GB, so I hope to hell it’s not a size issue and dormant libraries are on EVERY OS these days.

Anyway, SharpKeys just exposes a Windows registry key, so you can always manipulate that on your own – that was more of a pain in the ass than it was to code the app, though, to be honest.

“And neither I can’t capture the ALT keys, PrintScreen. The Pause/Break it says it’s NumLock. And the NumLock it says it’s the EURO sign.”

I’m having the exact same symptoms, word-for-word, with my Dell laptop keyboard. And this computer is only a couple of weeks old.

Plus, whenever you hold down any alphabet key, numberal key, or key with a scroll function within the ‘type a key’ prompt window, it will change from the initial key code to another after a bit. For example, I hold down the R key and it will say “Key: R (00_13)”, but then change to “(E0_3F13)” after exactly 1 second. Then, if you click OK, it will say you have entered an unrecognized key and to visit the site to check for an update. I assume that the (E0_3F13) key code is the function for the continual entry of the key (i.e. “rrrrrrrrrrrrrr” when you hold the key down). This must be why it also happens for keys with scrolling functions.

I don’t want to change any alphabet or numeral key. But I do want to change the Page Up and Page Dn keys.

@Aaron: Alt keys are rarely captured via the TypeKey screen, but you can always select those by hand from the list – I know that aspect of the product works because I remap an Alt key :)

As to Print Screen and Pause/Break, those are often problematic due to the nature of the keys (they are triple byte and not double byte scan codes that Windows doesn’t like much) and with notebooks there’s always a chance that there’s an overlapping key. For example on my ThinkPad there’s ScrLk on it’s own but if I want NumLock I have to type Fn+ScrLk. I’m guessing that if you select these keys form the list, there’s a 50% chance that they’d get remapped. And holding down the R, that’s just odd! Never experimented with it…

Above and beyond all of this, I’m just exposing a registry key: Windows is what’s actually remapping it.

@Charles – sounds like the same thing as Aaron: PrtSc is an odd key and F13 isn’t found on most non-Apple keyboards… sort of working in the dark on that one.

Hi Randy. Nice program, I use it to remap web-forward on my thinkpad to a left windows key under XP.

My question: I frequently use my thinkpad while docked, connected to a PS/2 Logitech media keyboard (UltraX OEM). I’m trying to remap the media keys to power, sleep, and wake. While Sharpkeys recognizes the keys and the remappings correctly, nothing happens when I press them (the system doesn’t sleep or power down). Any idea why this is happening?

Btw, I tried remapping the Ins key to sleep as well, which also doesn’t sleep the system when pressed. Any ideas?

Could be any number of things: the keys that you’re trying to remap to/from aren’t “standard” keys… for example, if you tried to remap the on-board Thinkpad volume keys or the Fn key, it wouldn’t work: some keys come into Windows, some don’t. Same with the Logitech keys: there’s a good chance that those keys are coming into Windows via a Driver but Windows isn’t allowed to redirect them – hard to say… basically, what ya see is what ya get – the only other thing I could suggest is something that actively redirects keys, like AutoHotKeys or something: that would be more proactive for remapping.

Thanks for the reply, Randy. The funny thing is, remapping “regular” keys (like Insert) to sleep or power don’t work either, although in both cases Windows can “see” and keypresses and recognizes the remapping, so it’s like the command just doesn’t work. I figure it may be something hokey with the Thinkpad implements power functions.

Firstly, thanks for your program (I won’t be as “exquisite” as some people around about its qualities and circumstances…)

I’m trying to map a couple of keys on an Airis laptop (you know, the kind of brand that just markets what a generic Taiwanese clonic laptop maker actually manufactures; and no, they won’t give you any support on this), because they won’t be correctly recognised by Windows Xp using “Spanish” as its Control Panel keyboard setting (or using any other, for that matter). They’re physically “isolated” from the rest of “non-Function-keys”, located as they are, after all the Function keys.

Well, I managed to remap one of these (it printed ” º ” in Spanish, now it prints ”

I’m on a MacBook running Windows XP in parallels desktop (virtualization proggie) and have succesfully mapped one of the Apple commandkeys to Alt Gr (Right Alt) to fully utilize my swedish keylayout.

However, the macbook keyboard has a pretty useless Enter key that i would like to remap to a Delete key. The problem is Sharpkeys won’t map the scancode to the delete key, instead it tells me to go to this webpage to look for an update :)

Nope: none, honestly… I don’t have access to non-US keyboard much less non-US notebooks. Further, what ya see is what ya get in this case. The whole package of SharpKeys does nothing but provide a list of double-byte scan codes and then shove them into the Scancode Map key that is exposed in Windows. Windows then does the remapping. The good news is that it does sound like you want to move whole keys. The bad news is that I have no idea about the keys that you’re trying to remap.

Having said that you can do the Hex math on the key on your own (there’s lots of references out there), use something is more active like AutoHotkeys, or check out the Microsoft Keyboard Layout Creator which offers a lot more support for non-US keyboards…

I’ve got a conundrum. I’ve been using Sharpkeys on my IBM Thinkpad for a couple of years now, remapping the back and forward web keys to home and end, respectively. Today it suddenly stopped working. The registry alterations are still there, but the back and forward keys are doing their normal assigned functions. Interestingly, the rt Ctrl key and rt Alt key remappings that I’ve also been using are unaffected. I’m not sure what I’ve changed on my end. Maybe a thinkpad hotkeys update or something has changed the behavior of those keys. I get the unknown key error if I try to type the key in the Sharpkeys edit dialogue. I’d be happy to do the manual workaround, but I don’t know how to find out what the scan code for that key is. Is there a simple way? Thanks very much!

Hotkeys alone doesn’t do it, but if you accidentally downloaded and installed the Web Keys application, it could be trapping the keys before Windows can get it.

I run with Hotkeys installed, but I make sure that the Web keys stuff is uninstalled and that Hotkeys doesn’t know about it… I get stuff like Fn+F7 and Fn+F5 working, but the web keys aren’t active (so they get passed to Windows).

I’m also suffering with trying to remap my Fujitsu Pause / Break key into delete. I think I’ve read all of the threads and don’t see a solution. Any new ideas out there? I understand that the Pause key is a triple byte and so the code is not picked up by SharpKeys, but does a code exist and will it work in the Keyboard Layout registry hack?

AltGr is a modifier key on PC keyboards used to type many characters, primarily ones that are unusual for the locale of the keyboard layout, such as foreign currency symbols and accented letters. If a key has a third symbol on it (on the front vertical face or the bottom right of the key top, sometimes in a different colour), then AltGr can often be used to type that symbol.

IBM states that AltGr is an abbreviation for “alternate graphic”.

The function and usage of AltGr vary according to the exact keyboard layout, which in turn varies according to both the locale and the operating system. On German keyboards it is used to type the symbols {, [, ], and }, which are commonly used by programmers and technical writers.

On those keyboard layouts having a defined AltGr key, it is equivalent to holding down the Ctrl and Alt keys together, which means many Microsoft Windows keyboard shortcuts (for example, shortcuts to icons in Windows Explorer) can be operated using only one hand from either side of the keyboard. However, AltGr + Del does not function as Ctrl-Alt-Del does.

Finally, AltGr also provides access to special keyboard characters such as the Euro symbol.

In Microsoft Windows, the functionality of AltGr is also available via Ctrl+Alt. This is useful in case the keyboard is not able to differentiate between the Alt key on the left and the AltGr key on the right.

It should be a completely separate key than a multiple key press, as the Windows key is different than Ctrl+Esc.

I am grateful for this program, so thank you for the time and work that you’ve put into it.

Or rather, is it possible to use the registry to swap Fn and left cntl keys ?

When I use the “type key” function in Sharp Keys, it tells me that the key code is E0_400A and then that it doesn’t know about it.

Could I use the value provided by sharp keys to edit the registry appropriately ?

There are so many things I love about my Samsung X60, but having the cntl key on the right of the Fn key – instead of bottom left where it belongs – is just so infuriating. Am I just going to have stop whining and get used to it ?

Nope. At least not in most cases: the Fn key is different keyboard to keyboard, OEM to OEM – it’s a complete crap shoot. If it’s working, it’s good – if it’s not, it’s not going to… at least as far as I know. Something like AutoHotKeys might have more luck, if ya wanna try them out.

I did more digging and see that this is a very common question so thanks for answering.

However, one thing I do keep seeing is the “most cases”, ie if no key code is sent then nothing can be done.

But given that the Fn key on my keyboard DOES send a key code (E0_400A) according to your Type Key function, could I not use this value to edit the registry directly and overload the key so that it was also my Left Cntl key ?

In theory? Sure: Fn should work like a Ctrl or Alt key. In reality, it’s still a 50-50 shot and the bigger problem is the triple byte code that the key is returning: SharpKeys only deals with double byte codes, which 99% of the keyboard offers. And even if it did handle it, it’s still a 50-50 shot: I get keycodes from my Lenovo hardware keys on my ThinkPad but they are still un-mapable… the hardware layer steals it and ignores the remap.

Print Screen is a special key (see the FAQ for more) and the key on it’s own can be remapped, but Shift and Alt can’t do different things as modifies. What I mean is that if you remap Print Screen to F12, Alt+Print Screen will remap to Alt+F12.

oO, that’s a good one. I guess the question is do you have a Dvorak keyboard or just a Dvorak layout on a Qwerty keyboard? If it’s just the Layout, then it’s Windows fault, in that it’s not respecting that layout at the level of the remapping. If it’s a propery keyboard, then I have no idea: I’ve never had access to a Dvorak keyboard (which is probably a good thing seeing as I’m at about 100-120 wpm – Dvorak being a supirior layout… I might get that up to 150, in which case I’d just stop talking!)

It’s a regular qwerty keyboard that I re-arranged into a dvorak layout. Assuming it’s the fault of Windows, I figure if I switch it back to qwerty in XP and remap the whole thing it should work… And if that fails I’ll punch the computer until something magical happens.

Hurrah for notepad? And for plugging another web site that has the same information I posted in 2002…

Anyway.

When you’re done making changes, why not export a REG file from regedit? One of the reasons why I don’t export values is because regedit already does it – the “hard” part of the remapping is getting the scan codes and mapping them out properly.

Good point, I can use regedit. But the average user probably can’t. In any case, I can’t import the mappings that are already in the registry. Maybe SharpKeys is looking for the global values, and I’ve set them in HKEY_CURRENT_USER.

BTW, I wasn’t trying to plug anything, that just happened to be the first site I googled up.

Your miracle software literally saved my butt. I can’t thank you as much as I would like, lol. I’ve been experiencin grave problems with my keyboard which your software momentarly solved and I am much relived. I would like to contact you, that is if you will, to see if you know something about my keyboard problem which has something to do with keyboard mapping/scancodes, mixed-up functions, etc. Thanks again…

I just wanted to say thank you for this utility, I’ve been using it for …well years now.

I program for a living and like a very specific PSK-3300 keyboard but the key layout was a bit wrong for some of the control keys etc.

I am about to get a new computer with Vista for the first time and just remembered I’m using SharpKeys and sure enough you have Vista support. I can keep my old keyboard with the worn off letters after all!

Well I’ll be blunt: this is all covered in the FAQ as well as the comments above and the product description… SharpKeys isn’t remapping the keys, Windows is. Accordingly, if Windows doesn’t know about a key (i.e. Volume which is likely to get handled by the hardware) then it can’t remap it. Beyond that, I can’t speak to the Apple keyboard because I don’t have one: I would have expected F13-F16 to be supported, but again, if they aren’t getting to Windows, Windows can’t remap them.

Hi! Great program, I needed to remap key: ‘ with ` (found usually above the TAB key – their output looks similar, but one is wrong as many people tell me). The ‘ (shift=@) key is the correct version(“mums'”, “dads'”, “my computer’s alive”. I always type using that top-right ` key which is a throwback to my old computing days – the ‘ key was there, possibly Amiga or C64. With this new remapping I will no longer suffer the abuse of countless billions online, telling me to ‘type that thing correctly, man’. One thing though, using the Delete button in your program will undo previous changes, yet the FAQ states that if you remap incorrectly, you’re screwed. Thankfully I wasn’t screwed, thanks to Delete – originally I did it wrong because I like to dive into programs without thought or attention. Cheers for the program :)

I’ve observed an odd phenomenon, which a previous poster alluded to. I remapped a key to PgUp, and it functions correctly. However, when holding down the remapped PgUp, the screen does not further move, whereas in holding down the original PgUp, the screen will scroll further after a short delay.

As the earlier poster mentioned, if you hold down the original PgUp key within the Type a Key dialog, it’ll first show Page Up(E0_49), and then after a brief pause will change into just (E0_4049). Is there any way to emulate the key holding down ability of the original keys?

Long answer short: no. I mean the whole key gets remapped, so if the “regular” page up key moved to another key, and it had that functionality, then it should follow. If not, then it’s prolly some hardware special key code, which Windows wouldn’t know about… very odd though.

Saw this forum and read about all the strange keys people have and their problems to determine what they actually send. I’ve written a virtual on-screen keyboard called Freefloat Key*One. If you install it and run the Designer program, add a normal key to the empty canvas, right-click on the key and select Record Keystrokes, click New and then you can record keystrokes at a very low level. Click Stop when you are done and inspect the key info in the list.

Please note that we are unable to answer any questions about keyboards, keys, or whatever unless you have bought the product.

I’m using a Mac Keyboard in windows. I’m trying to map the Eject and volume functions but SharpKeys tells me it doesn’t recognize the keys. It also doesn’t seem to detect the alt/option button for some reason. It works in windows so I’m not sure why SharpKeys wouldn’t recognize it. Great program otherwise though. I was about ready to return this keyboard when I saw that it didn’t have a print screen button.

If SharpKeys is telling you that it doesn’t recognize it, it’s because of one of three things: a) Windows doesn’t know about, b) Windows and/or hardware is intercepting the key before it gets to Windows-proper (which happens with BootCamp-based Windows) or c) it’s a triple-byte key which is a pain in the ass to map (for lack of a more technical description).

If it’s a or b, there’s nothing to be done with the Windows-based remapping (SharpKeys doesn’t remap – it just exposes a registry key). If it’s C you can look into something like the Windows Keyboard Layout remapper…

dude man, great product… im building a wireless DDR pad from scratch and i bought a Targus wireless 10-key pad but StepMania wasn’t liking most of the keys… your program fixed everything for me, great job man

Triple byte codes are bizarre creatures… especially for keys that aren’t found on “normal” keyboards. Having said that, check the comments and/or the FAQ for other pro-active remapping solutions like AutoHotKey or the Microsoft keyboard layout thingy…

Sounds like the driver that the keyboard is using is still getting it’s hardware command even though Windows is treating it as Volume Down… nothing that can be done for that. Unless your version of Windows allows you to change the behavior of Sleep – I think Vista might allow that… if you change it to “Do Nothing” you should be OK.

Thank you for a very useful and useable tool. It solved an ongoing problem for a friend who was accidentally pressing the left control key instead of the left shift key and when he typed the next letter, many unpredictable and usually non-reversible things happened to the text he was writing. With SharpKeys I disabled the left control key. Thanks again.

SharpKeys doesn’t decide what the buttons do – that’s up to Windows. So if you have a physical Browser button on a keyboard OR if you remap a different key to be a Browser button, it’s up to the driver software in Windows to decide which application gets launched if that button is clicked…

@Nathan – not within SharpKeys itself but you can certainly export a REG file for the key/value that Windows uses for the remapping… I do that myself for most of my PC’s: I turn off Caps lock on every PC, so I have a reg file for that – the rest is all fine tuning (like whether or not I need to inject a new Windows key in it!)

@Josh – Fn is different per keyboard (per the FAQ and comments here) – the Fn key often doesn’t make it’s way into Windows, getting trapped by the hardware. Same thing happens with the new Apple keyboard: Fn is totally ignored by Windows (and probably OSX – I’m betting the keyboard is sending a different key code when Fn is pressed).

Depends – did you use the key detection or try it from the list? Different versions of Lenovo (and IBM) ThinkPads have used different key codes… they aren’t automatically Web Back/Forward unless a drive is installed…

What I do know is that I currently have my back/forward keys remapped to Alt and Ctrl respectively, but I didn’t install any drivers for it… might make a difference.

Alt is a hard key to trap with Type Key because it toggles the system menu, and doesn’t show up. As for the Ctrl key, if that’s showing up in Type Key as a Windows key, Windows thinks it’s a Windows key. No way around that.

Either way you can select whatever keys you want from the list – and will have to for Alt – and map it to whatever else you want in the list, including Left vs Right keys.

Randy, I have a ThinkPad T61 w/Vista and removed most of the ThinkVantage software because I don�t like extra stuff doing things I don�t need. Now the big blue ThinkVantage button does nothing. Since the �Productivity Center� software controls that button, there is nothing telling it what to do and there is nothing I can change. I�d like to know if Sharpkeys can find that button and let me use it to open another program like Word or IE.

The Boot Camp driver is for running Windows on Mac hardware. The keyboard is Mac hardware. Ergo, the keyboard driver that comes with Boot Camp will support the new Mac keyboard on Windows. At least that’s what I’ve heard – I did a search using Live and I got more info there.

I got a new X60 Tablet running Vista. For half an afternoon, I’ve been trying to re-map the annoying WWWBack/Forward keys to something useful. While the web is awash with tricks and tools, none of them seem to work for me. SharpKeys reports 00_100 as the code for either key. Again, this is no weired third-party USB keyboard, but the built-in one of the Lenovo laptop. I’m desperate. Any hints?

@David – no idea on that. On my T60p, they were mappable… it could be on the X60 Tablet that they did something new or funky – for example, Windows is oblivious to the volume/mute/ThinkVantage keys… they may have changed it for the tablet.

@Gorazd – I’ve helped you as much as I can. Do some research and you’ll find your answer.

I really need the “shift” key on the right to program it to be “Fn” on a Vaio laptop, to be able to use “pg up” and “pg down” easier (at this moment “Fn” key is on the left, far away from “pg up” and “pg down”).

Please, can somebody help me step by step with this (otherwise I screw up my laptop for sure), as I am a complete idiot girl when comes to computers?

Thanks – I got one of those new Apple keyboards to use on my Vista box and your program worked perfect to map the F13 key to PrtSc, and to reverse the left Windows and Alt keys like they are on a regular PC keyboard. Works like a charm!

Hi, I think the app is great, though how might I map the “Break” key? I’m another mac keyboard user that want’s to map F16 to BRK, it’ comes up with (00_E1) as the key when I use the accessibility on-screen keyboard.

Nice tool, works well on XPsp2 with an ortek mck-91 (mini keyboard). I’ve configured all the media-extra-keys to work, without having to install the lame software/drivers that came with the keyboard. Oh yes, and it works perfect with my french keyboard.

Probably because the game is getting input via XInput (or possibly DirectPlay) which may bypass the “standard” Windows remapping hooks. Hard to say without knowing the game, but I think the best thing in this case would be to replace the keyboard.

Hello, I got SharpKeys awhile back and remapped f9-f12 to be my media keys for itunes – stop, play, previous, and next in that order. It was working fine before, but suddenly, they don’t work when itunes is minimized! I like being able to switch tracks while I am working in other windows (browsing, Word, etc., etc.) and it’s a pain to switch back to the itunes window every single time. Any idea how to fix this?

If I had to guess did you install a new version of iTunes or a keyboard driver since this stopped working? I’ve had very bad luck with getting iTunes to change tracks, depending on the version of iTunes.

FWIW, SharpKeys has nothing to do with the function of these keys: if iTunes isn’t listening when Windows tells it to change track, there’s little Windows can do about it.

Just DLed this, and it works fine from what I can tell, but main reason I did is to find a way to be able to map one of my multimedia keys to automatically turn on one of my playlists in Windows Media Player. A friend of mine has his keyboard set up where just pushing one of his multimedia keys pops the Playlist he uses most up and then he just presses the play button to start it up. Do you know how I’m supposed to do this?

Probably not with SharpKeys – it sounds like he’s got an “extra” drive for his keyboard or he hooked up his media player to respond to a key. Check the options that come with his keyboard driver – I know things like IntelliType has a bunch of options that you can set for all of the “extra” keys. Like does Play work like Play, Play/Pause toggle, etc. The reason why SharpKeys can’t help in this is because there’s no key in Windows that is known as “popup play list” – if there was, then you could map that to any other key :)

Is there a way to to swap the comma with the less than. When I am programming, I use the less than symbol much more than the comma. Everything i’m finding only lets me change it to a different key. Any help with changing it so the shift is swapped on it would be great. Thanks!

That’s interesting: I didn’t know that it allowed you to remap half keys like that… I thought it was whole keys only. It’s all good though: the comments show me recommending the layout editor as recent as May!

Totally different part of the registry: the key that I expose is something that Windows uses to remap keys. What this post is about are things in the Dell or Intellitype driver – it’s not remapping keys but it’s assigning different functions to existing keys…

Not much I can do for this one… when you export the Windows owned key that SharpKeys is working on, there’s a bunch of stuff in the subkey that comes with it – I’m not willing to take one machine’s settings and offer that .REG file for all keys. Especially when someone can download SharpKeys and do that themselves :)

Also, if someone has Leopard (and assuming that the majority of the owners of the new Apple keyboards have new machines and/or are AppleHeads and bought the OS on their own) then they have the Apple-supported keyboard driver that’s available via BootCamp. That driver even includes support for the disc eject and all of the Fn-based functions…

So I mean, I could, but this sounds like a solution that needs a problem, ya?

Actually, it depends on what you’re used to – ThinkPads have always had the Fn in the place where they are now – if your last three notebooks over five years were ThinkPads, it IS in the right place. Toshiba puts it between the Ctrl and Alt keys which boggles my mind, since I don’t use it as much. Dell, HP, and Sony have moved it over the years – Apple put it up where Insert should be (on their wired metal keyboard.)

As you can guess, this non-standard placement reflexes the different uses of the Fn key (and why Windows doesn’t remap it!)

Hm. Ya know, I’ve never tried that, swapping keys… I don’t know if that’s possible with just SharpKeys because you’ll probably end up with both keys acting like the last key set… so in this case, two Inserts and two Deletes. For something like this, you might want to look into the Windows Keyboard Layout Editor, which a few other people have mentioned in the comments… it might give you better control over swapping two of the same keys…

SharpKeys doesn’t work to remap the keys on a Sun Type 6 USB (UNIX layout). The Help, Stop, Props, Front, Open, Find, Again, Undo, Copy, Paste, Cut, and blank keys (on the left side) and the volume-control keys (on the top-right) don’t work at all for the ‘Type Key’ feature, at least.

I was wondering if there is a way to disable the Shift+numpad functions. For example, I would like “shift+1” to not activate “end”, but at the same time still be able to bind keys to “shift+1” for a pc game.

Can you tell me where in the registry the key changes are? I’d like to use more of my function keys as internet keys, but can only use Home and Favorites. I’d like to add things like Ebay and Netflix and so on. Thanks

Great utility, Randy! If I can suggest a feature: it would be nice to have the option to temporarily disable the keyboard changes, like toggling them on and off. Or at least the ability to save original and changed mappings to REG files, so I can load them as I need.

This would be useful for when someone else is at my keyboard, like when I use it for training someone. Thanks.

When I said I wanted to use more of my function keys as internet keys, I meant with your program, I can remap F8 to Web: Home. Somewhere your program is reading the information of what my home page is and now that I’ve remapped F8 to Web: Home it goes to my home page when I press F8. I’d like to remap maybe F2 to Ebay and F3 to Netflix and so on. That’s what I’m wondering how to do.

@Bob – you can do that with the registry already… reason why it’s not in the app is because I didn’t want to be “on the hook” for malicious reg files being loaded and injected through SharpKeys – I leave it to the registry.

@Carol – Ah, OK – nope, that’s not do able. The only reason why there’s a Web:Home key is because the OS supports it… anything else would need addition software. If you have a Microsoft keyboard that has the My Favorites buttons, you can always give that a try with IntelliType.

Thanks, anyway, Randy. I don’t have a Microsoft keyboard, so I don’t have that key. I looked at your FAQs but couldn’t see where the key changes are in the registry. Could you point me in the right direction, please? Thanks again,

Thanks for a very useful program. I recently used it to remap the page-up/down keys on my laptop to Home/End keys. The remapping worked fine but a couple of the windows system shortcut behaviours seem to have changed. Typing Shift + Del or Del alone now brings up the right-click alternative actions menu instead of deleting the file. Has anyone ever had this issue before? If so, would you happen to know of any workarounds?

I have a similar problem like Aaron that posted in “September 09, 2006 at 07:34 PM”.

My problem is that all normal keys (A, B, C, D, E, F , etc) are picked as “(E0_3FDC)”. This code does not appear after a second in my case but immediatelly. I am using a Microsoft Natural Keyboard Pro on a normal desktop computer.

Btw, is the “sleep (E0_5F)” key the same as “standby”? Because I tried remapping the standby key on the keyboard using the sleep code and it doesn’t work. But I could remap successfully the “back (E0_6A)” key to volume down.

Based off Aaron’s comment from a while ago, I’d say you are pressing the key down too long when you are in the TypeKey window (I just verified it myself, actually – it only happens if you press and hold a key).

Sleep should be the same as Standby, but there are a few things that go into that. One is that your computer is configured to sleep when sleep is pressed (see your Power settings) and the other is that the key that you’re remapping it to is a regular key and not a hardware key…

Thanks a lot for this program. I’ve just found it and it seems to work pretty well. I accidentally downloaded an early version and even it worked respectably. Can’t wait to try out this newer version.

I have one question, and from skimming the FAQ and other comments I’m guessing the answer is a no. But is there any way to create a “virtual” key? I assume there isn’t, at least not w/o a driver, since there would be no corresponding hardware.

I use tap zones on my touch pad and I was hoping to create a key I could map to the tap zone via the mouse driver without having to waste a real key on the function as well. I already tried to write a macro for this w/ autohotkey but was unsuccessful.

No way for SharpKeys to do it – I would usually suggest AutoHotKeys b/c you need something to hang around in memory and SharpKeys doesn’t do that (and Windows doesn’t remap mouse keys to keyboard keys) – in addition to that, a touchpad would require a special driver to recognize the tapping.

Thanks a lot for the quick response. That was lightning. I went back to AutoHotKey, as you suggested, and more thoroughly read the FAQ there.

For anyone who may have the same question…

I was able to create a blanket “Alt+F4” hotkey script/command using [SendInput, !{F4}]. Then I used AutoHotKey’s AHK to EXE converter. After that I used my touch pad driver to specify a specific tap zone to run that command. Works like a charm.

Got me. I mean, if you bring up the SharpKeys UI it will show you whatever is being directed… there have been people that have edited the Registry key that SharpKeys edits by hand and even those things show up.

It sounds like you might have a deal key on your keyboard, ironically enough.

I’ll say it again: If the shift key was remapped already it would show in the list. Remapping Left Shift to Left Shift wouldn’t do anything except confuse Windows. Telling you this is about all I can do to help because I don’t know why Windows isn’t recognizing your left shift key.

For the record – as is stated in about a dozen posts here – SharpKeys doesn’t remap any keys; it exposes a registry key within Windows that Windows uses to remap the key. SharpKeys doesn’t stay in memory when it’s window is closed; it has no drivers or services that installs.

however, i was wondering if there was a way to map keys to do things that there are no keys for, for example to open a specific folder or program. or to map one key to do the job of a couple.. ie: shift+2. i was also wondering if it would be possible to map a key to be kind of like a caps lock but for the Fn key.

Scroll up and read the recommendation about getting the keyboard driver for Windows from BootCamp for the Apple keyboard. Beyond that, even though it says the scan code is unknown, it doesn’t mean that it’s unusable – it’s just a key that isn’t in the list already… you still might be able to remap it.

It could be a coincidence but just after downloading the zip version (the link at the top of http://www.randyrants.com/2006/07/sharpkeys_211/) at just past 11pm EST 08/03/27, I unzipped the file, ran the program, and then suddenly my AntiVir anti-virus found a couple of trojan horse viruses. The program did work perfectly as advertised though, enabling me to map the key between L-SHIFT and Z to also be L-Shift, the key between ‘ and Enter to also be Enter, and the INSERT toggle just beside Delete to also be Delete. (All the keys are getting so squished on laptop keyboards – my author spouse wants L-SHIFT, ENTER and DELETE to be larger).

Sorry, but there’s no way there’s a trojan horse in there. Not only was it scanned before uploaded but I just grabbed it and rescanned it. I also know that this file has been picked up by other hosting sites that offer freeware and I know they scan their files too.

I would grab a ZIP from somewhere else and see if that has the same reaction with your AV.

i think it would be an awesome idea to make a special edition that pre-installs settings for Apple keyboards, i just remapped some keys, but special funtion keys like F4 are for dashboard in mac, you could map them for being F3 and without any programs selected map them for being to start Vista’s Sidebar?

Great tool Randy. This is the only way (and a totally easy way) to make (most of) the keys on my new Apple keyboard work with Vista x64. So the Eject key doesn’t work, but I’m really not too bothered by that, the main thing is I now have volume control and mute/unmute which is the most important for me. So thanks a lot and I’ll buy you a beer if you ever come to Cambridge.

Mr.Rants, I am in complete awe of the talent of people like yourself that are able to make thing such as this program. I have never understood why something like this is not part of the windows handicapped accessories. And then for you to allow others to benefit is very kind of you. I was told about your program because due to an injury I have problems with the left side of my left hand. Which means that I am constantly turning on the cap lock by mistake. I would like to relocate it but I am not able to see it listed and don’t know the “computer” language name for it. There is a key on the bottom between the FN and ALT keys with the windows logo on it that would be a better place, however I don’t know how to change it. Would you please tell me how, it would be so helpful to me and I would be very appreciative.

Well, if you want to turn Caps Lock altogether, that’s easy: select Caps Lock on the left list and “Turn Key Off” on the right. If you want to move it to the Windows key (the one with the logo) then do the same on the left and “Left Windows Key” on the right list.

For more info, there’s also the FAQ and the screenshots up on the top of the page.

However, instead of using the registry file on the above page, I just mapped some dummy key using SharpKeys and then manually modified the registry to reflect the pause code of E1 1D. You should note that the codes need to be reversed in the registry. i.e. pause would be entered as 1D E1

Realistically, you can’t with the Windows-based remapping keys… you can move keys, but you can’t swap them. Reason being is that A becomes B, B tries to become A, which usually cancels out and both keys think they’re A.

@Mily – no idea… if you have x64 installed already, give it a chance before you buy the keyboard – it’ll work with any keyboard. FWIW, if you DO get an Apple keyboard you can always try to get the BootCamp driver from Apple for XP.

@Jay – no idea, but you can always hold Alt and type 0128 on a keypad.

I can easily explain it: ease of coding. The .NET Framework can be downloaded via Windows Update, it’s install footprint is 20-30 MB, and it’s pretty much on most XP or Vista machines these days (which matches where SharpKeys works). On top of that, I was able to do a lot of the UI niceness with minimal effort and with little memory usage… it’s a win-win all around. Broadband is in most homes, in almost all businesses, and you can’t buy a HDD that’s smaller than 100GB these days… when .NET was announced in 2001, this was a conmmon conversation – in 2008, the question I’d have is why on earth wouldn’t I?

As for VB, I haven’t used it since the mid-90s and I don’t like it. At all. Besides, unless it’s VB6, VB is a .NET language and has the same run time that C# does…

FWIW, you don’t need to keep SharpKeys installed once you’re done remapping – it’s simply a front end to a Registry key so you can always set that by hand :)

It’s not a question of download time or disk space. It is the “install footprint is 20-30 MB”. That may make sense for development but not for running a simple app. I mentioned VB6 as an example of the difference between the development environment and the run time environment. The VB6 runtime environment only required one or two small DLLs, not 20-30 MB of bloat. In addition, those DLLs were only loaded if you ran the app. As I understand it, the .Net environment is an installed environment – permanently loaded – not just a runtime environment loaded with an app. This is a big drain on resources and another avenue for crashes and security holes. Is there not a small subset of .Net service DLLs that would establish a .Net runtime environment without the bloat? If not, there should be.

As you say, .Net may be a win for developers but I don’t see it as a win for users. I have many hundreds of apps that have very sophisticated and well designed user interfaces installed, none of which need .Net, so it can’t be too hard to do without .Net.

Although I am sure that there are thousands if not even millions of systems with .Net installed, that is just a small fraction of the hundreds of millions of PCs operating today so I question it being on “most” computers. FYI, I do have broadband and I do have over a TB of disk space and I still don’t want .Net. Especially if, as you say, SharpKeys is just a registry tweak that could be accomplished with a simple text REG file.

BTW, I was lulled into carelessness by your CAPTHRA filter. I did not realize that you would expose all our email addresses to the SPAM bots. Please delete my address from my earlier post.

And again, it was my choice to use the .NET Framework because of the ease of coding and the fact that the runtime is on nearly all XP and Vista machines. So, from my point of view: it just works.

And to be honest, I don’t see the harm in that.

Aside from that, your knowledge of the .NET Framework is… limited. The .NET Framework is only loaded into memory when something needs it – it is then unloaded like any other DLL be it VB6 or MFC runtime. It sits on the HDD like any other runtime and only goes active when it’s needed… so I’m not sure what you’re talking about with “big drain on resources”… and I’ll fully admit that I’m not going to “roll back to 1998” to code in VB6 – sorry, but that doesn’t sound like smart development in today’s day and age.

Further, there are many thousands of applications that only need Win32 and the Windows API – I’m not sure I get what ya mean. As I’ve said before, it was my choice to use .NET because it allowed me to do a lot of things with little effort – if that’s not pleasing to my “userbase of freeware software” then, to be blunt, they obviously don’t have to download it… especially SharpKeys: you can install it (and the Framework), set your registry keys, and uninstall it all and the registry settings remain. but there are also serveral thousands of applications that use the .NET Framework, so I’m not sure what you’re driving at… Again, please revisit any development argument cerca 2001-2003 about why developers *and* users can appreciate the .NET Framework. And yes Users care – if you’ve never lived through the DLL Hell that was around for VB6 and can’t appreciate a single SxS Runtime, then this whole conversation is moot… VB6 Apps was a nightmare to deploy because some applications looked for specific versions in shared locations; – it’s been hashed and rehashed… for me, I’ll continue to code in a language that makes sense for my needs.

As for CAPTCHA on blogs and web sites: thats to protect the web site from SPAM – it’s not to your email address from page scrapers…

Yes, my knowledge of .Net is quite limited. That is why I am asking questions. And, Yes, I did go thru the DLL hell. I wrote my first program in 1960, had my first CPM system in the early 70s, first DOS in the late 70s and first windows some time after. It was never a question of IF windows was going to crash, it was just How Soon? However, I have been a user of windows, not a programmer of windows. By the time Windows was becoming common, I was no longer programming but managing and I had not the need or motivation to learn a new environment. There is only so much time in a day.

I had assumed, which you confirmed, that .Net was an easier development environment. I apparently have some inaccurate assumptions about the runtime environment. No longer programming, I did not follow any of the development arguments to which you refer. [Any handy links for succinct overview(s) of the .Net runtime environment would be appreciated.] And I was not asking you to revert back to 1998 coding. I am trying to get to a common frame of reference.

So, I think what you are saying is that instead of multiple DLLs (and multiple DLL versions), being loaded for various apps, .Net is a single set of resources/DLLs or APIs that are available to .Net apps. Is this correct? If they are APIs then that avoids some of the DLL version problems, Yes? (BTW, what is an SxS runtime?) App specific DLLs still exist and still can cause problems but the prevalence is reduced, Right?

Going further, the .Net environment is installed, only taking up disk space until it is loaded when a .Net app is executed. The memory requirements of the .Net environment is small because any one .Net app only uses a subset of the .Net services. (How much is small?) Is this correct? But, like a DLL, the subset remains loaded after the app is terminated until being swapped out to virtual memory due to non-use. Yes? And is totally removed only after a reboot. Right? And that is why you say that .Net is not a drain on resources.

If all this is true, then there is still one issue I don’t understand. Why would I have to uninstall SharpKeys to stop it from using resources? Would not all runtime traces of Sharpkey disappear after a reboot?

Re CAPTCHA, Yes I know it is to protect the site from SPAM bots. What I said was it lulled me into assuming that you would protect the posters as well and not publish addresses. Most blogs and web sites do not publish the addresses of users posting to their sites. My request is for you to remove or obliterate my address on my first post.

That’s cool, but there are a lot of good references that can tell you about the .NET Framework while I can only share my experiences with it.

That said, the .NET Framework is a collection of assemblies (managed-code term for DLL) that are signed and versioned. When you build a .NET Application, you can specifically target a version of runtime you wish to use. Those versions are installed into different directories so you can run in a Side by Side (SxS) environment – this means that if you have System.dll is it stored in Windows\Microsoft.NET\1.0 (or 2.0, etc) rather than everything going to the Application directory or worse, System32. In addition to that, you have the option of added your own assemblies into the Global Assembly Cache (known as the GAC) and then version stamp them… the GAC manages the different versions – the app that calls the assembly can specific which version to call. This solves (or side steps) DLL Hell, where many applications went looking for MSVB6.DLL and not knowing which version it was (or if it was compatible).

With that, assemblies only get loaded if they are need, be it a .NET assembly or one of your own. For example, SharpKeys (according to Process Explorer) uses 14.7MB. All of that is released when it’s closed – how much of that is .NET and SharpKeys? No idea, but considering the list of keys I load for the UI, and that the EXE itself is 72K, I’m guessing it’s 1/2 of each. That said, SharpMT is 1.3MB for all of its managed and native code on the HDD – 40MB loaded, but I know that that is picking up a bunch of native Win32 DLLs via PInvoke… so it’s really up for debate what is what.

What I was saying about uninstalling SharpKeys basically a way to change your keyboard layout then uninstall the software. It would sit idle until launched, if you left it installed – my point was that you don’t need it installed for the remapping to be active.

Otherwise, I’d pop over to MSDN for more information about the internals of the Framework – they would be the de facto reference – http://msdn.microsoft.com/en-us/netframework/default.aspx – they *will* have a bunch of information regarding 3.0 and 3.5 of the Framework but I haven’t gotten into them yet… most of my stuff is 2.0 related at this point.

It is required, but for Vista, the EXE should be installed with the “Require Administrator rights” bit flipped… I honestly can’t say that the same thing happens in XP – I almost never ran XP as a non-Admin account… bad coder, no cookie! :(

Hey, great tool. I’ve developed my own managed app and I want to launch it using a “simple” keyboard shortcut. Since I will be distributing the application, I wanted a solution that I could “bake” in with my application so it will just “magically” work on the “client” machine. I was hoping to update the registry during my first time run to create the shortcut? Is there anyway you can help me with that?

Hm. Well, there’s plenty of information about how to remap a key to another… even on my own side, from before I wrote SharpKeys. The tricky part will be finding a key that you can snag that will allow you to open an application… that’s harder.

Hi. This software seems nice but unfortunately it doesn’t work on my keyboard’s extra keys and thus I’m writing this post to let you know about the issue in hopes to help you to add the support for an upcoming release.

My keyboard is a Logitech UltraX Media Keyboard (embossed on the bottom plastic) The exact model number (M/N) is: Y-BL49A. This is one of the ultra-flat keyboard models from Logitech and it has a usb connector. The extra buttons are labeled (from left to right) as Media, Play/Pause, Mute, Favorites, E-Mail and WWW. All of them report the same 00_100.

I’m using Vista x64 Home Premium UK English with Finnish keyboard map on an Intel C2D e6750 with 4×1 GB of 800 MHz DDR2 memory in dual channel mode and an Nvidia Geforce 9800 GTX 512MB PCIe card on an Asus P5K with the latest (v1006) bios. Hopefully this information helps the development of this software.

There’s a bunch of other comments here about this particular keyboard (or at least other Logitech models) that mention this… basically, it’s not sending the commands through to Windows, so Windows can’t remap them…

Nice program!! It’s really good, although my new Microsoft USB keyboard doesn’t seem to work with it – when I press any hot key (web back/forward, play/pause, vol. up/down/mute, web home, web search, web mail) SharpKeys gives the code (00_100) for the key, which then changes to (E0_4000) if I hold the key down until it repeats. I know this has been mentioned before, but I thought I’d mention again as I also got a E0_4000 code.

can you use this program on the new apple wireless keyboard if you are running it on a Vista M$ computer? like, for example, to remap the Apple keyboard so that control- down arrow would be “page down” and control up arrow would be a “page up”?

Sorry, I’m not very sophisticated as a user, and need to have these things “dumbed down”.

I still can’t figure out why manufacturers have to mess with the keyboard layouts. I learned to type and then they start moving the Shift and Enter keys making my typing impossible.

I live in Canada and for some stupid reason the manufacturers think we all speak and type French. So they give us a keyboard (on all new laptops) with a French key layout. WHAT A RETARDED IDEA! For a country with a French population of maybe 11% they think they need to placate the “elite frenchmen” and give them thier “special” little characters by changing the entire product line. Your sharp keys have kept me from smashing my computer. Kudos to you mate! Well done, and a huge thanks!

Great program i’m using it for my apple alu keyboard on my windows XP pc. I managed to map the volume down(fn+f11) and volume up(fn+f12) keys, but i cant get the (fn+f10) scancode so i cant bind the mute button :(.

Is there a way to fix this, or a way so i can put it manually in the registry?

Is there way to use SharpKeys to remap the right mouse button to a keyboard button, for use on one-button MacBooks running Windows? I have searched through these postings and see no reference to such. But it seems a logical use.

first, nice program – works great. but, after using it my user profile broke when logging back in. i’m curious as to why that would happen — any ideas? i wonder if it’s because i moved my user profile stuff around before so it wasn’t on the c drive (via registry) — would this interfere with permissions somewhere? now when i look at my profile list it changed my user profile path, and i can’t get it to stick on the correct path. PLEASE HELP! (i’ll check the comments here later, or you can email me…)

how exactly does the program write to registry? i’ve seen several suggestions for outputting the scancode into a registry file — i think it would be a great idea for several reasons. one, so i can reuse my mappings (on the same comp next time i reinstall) more easily without needing to go back through the program. two, because we’re all curious what the new scancode would be. and third, so possibly it won’t break my computer! :)

also, i’m partial to C# and .NET myself. i saw someone earlier complaining about installing the runtime; i’m pretty sure you can create an installer or publish the project so that it will package all the required dlls/etc with the program so you don’t need the entire framework.

So, SharpKeys writes to one specific location in the registry. It doesn’t impact permissions, the file system or any other key of the tree.

That said, it sounds like you changed file locations and profile stuff on your own – that’s why you’re having trouble… that you made a keyboard remapping at the same time is coincidental.

As for how it’s writing to the Registry, it’s using the .NET supplied registry classes. Nothing major there. And it knows which scancodes to write because they’ve been hard coded to the list boxes in the SharpKeys UI.

Lastly, if you have a .NET application you need to have the .NET Runtime installed before it will run. Under no circumstances should you be carving out certain DLL’s of the Framework and shipping them. Violates the .NET EULA sure, but the bigger problem is if you have another .NET application that you want to run. That’s why the MSI for SharpKeys is so small: it expects the runtime to be installed already and leaves that to the official installer app.

wow, thanks for the quick response. i’m sure it was just coincidental. my moved profile has been working just fine for the last couple days, and i haven’t installed anything recently besides sharpkeys. in my panic i was hoping i could blame that, and thereby narrow down the problem.

out of curiousity, is the keyboard layout the only registry key you’re writing to? something like:

one more thing (now i’m spamming) — i didn’t mean that you should carve out the dlls yourself; i’m pretty sure Visual Studio .NET itself has a “publish” feature that packages everything for you in an installer it creates. and therefore it doesn’t violate any EULAs or hurt any other programs. it should just check the destination machine to see if the parts it needs are there, and if not installs them with the program, so if someone doesn’t want the whole runtime they don’t need it.

(just for your edification; i prefer assuming the runtime exists as well)

Nope. At least not 2005. They have ClickOnce but that only works if the Framework is already there. Besides, in today’s day and age, 25MB of Runtime that shaves a bunch of size off each app *and* makes it faster and safer to code? Very, very small tradeoff.

Hello, does anyone know how to remap the ‘back and forward’ web-keys on x-series thinkpads? (specifically for pg-up and down keys)

I’ve tried SharpKeys and KeyTweak. Also tried Lenovos Keyboard Customizer by disabling the web-keys within that app, then disabling it in the startup list when it didnt work. (I dont really see any startup processes that look to be interfering)

I read that some people have had success with both SharpKeys and KeyTweak on older model Thinkpads.. any advice would be helpful. Thanks

Hi again, just to add to the previous post, the back and forward button scancodes in sharpkeys are listed as 00_100, which give the message “You’ve entered a key that SharpKeys doesnt know about. Please check the SharpKeys website for an updated release.”

When I tried remapping them in KeyTweak, it said those keys were successfully remapped, but in actuality they function the same with no sign of change. When I opened SharpKeys again to check, it listed the remapped keys in the main menu as: “Web: Back (E0_6A)” and “Web: Forward (E0_69)”.. without quotes.

I have an Acer laptop with a Euro key and a Dollar key. Neither of them do anything! I tried mapping them with Sharpkeys, and I can map them to another existing key. How can I make them do what they are supposed to? i.e. Euro and Dollar symbols?

Sadly, not a one. The extended keys like these are quirky and different across keyboards. There’s already a bunch of these in the list of available keys but I know that not every keyboard uses the same scancode – that’s the tricky part of remapping these.

One problem I ran into is that even with SharpKeys, (great program by the way) i still have a few keys on my keyboard that aren’t recognized by the system. It usually is something weird, like F17 doesn’t show up, but F18 and F19 have no problem.

AutoHotKeys also fails to recognize it, so I assume it might be a driver error, does this seem fairly accurate?

@Harrin – pretty much, yeah: Windows isn’t getting notified by it. I did see this behavior with some of the Mac-specific keyboards, but I could be misremembering that… but if Windows doesn’t see it and AutoHotKeys doesn’t, I’m not surprised SharpKeys doesn’t either.

@Ted – sorry, but SharpKeys only moves entire keys… Shift-F10 can’t be remapped; the whole of F10 would need to be remapped.

Ok… I got a gaming keyboard and the alt button wasn’t where I wanted it. I changed the alt to “c” and lost my “c” keystroke. The keyboard has 2 “b” keys on it. I changed one of the “b”‘s thinking it would only affect one, logged out for changes to go into effect, and whaddya know, “b” is in my password, and is now unmapped. Any ideas on how I can disable it so I can get into Windows on my desktop..? =(

@Ted: I mapped to Special: Application (E0_5D) for mouse context menu popup. It works, but after having switched to the Logitech MX Revolution mouse, my context menus generally appear in the wrong location.

I have found to be your sharpkeys utility quite useful as I turned the CAPSLOCK key to ESC so I can edit in vi with 87.3% more peace of mind.

I do have a question though. Is there a way to make windows assign ONE key (the ESC key, for instance) to ALT-F4? I realize alt-f4 is not really a single scancode, so it may be impossible… but I thought I would ask you, since you obviously have some knowledge on the whole “key mapping” subject.

Great program, but I have a question. I’m trying to remap keys on a Apple aluminum keyboard and SharpKeys 2.1.1 doesn’t even recognize when I push the control keys (even though Windows does) on either side of the keyboard. It also doesn’t recognize the Apple keys at all. When I press either of the control or apple keys, nothing happens during the ‘strike a key’ phase. The Control keys get Alt/Option keys get recognized, but not the others. Has anyone else had the same problem?

I have recently bought a new MacBook on which I have installed VMWare Fusion so that I can run Windows programs such as Microsoft Access. Missing from the Mac keyboard are the break and Del keys. I need crtl-break and del in Access.

SharpKeys has enabled me to map crtl-break to F12 and Del to F11 within Windows. Works a charm.

hey randy – love the sharp keys – it transformed my tiny eeepc – the keyboard is so small and not excellently designed… i loved that i could switch my ctrl with delete and the shift and page up…

but now i got a keyboard and a monitor so i don’t kill my eyes when working long hours — the only problem is that sharp keys is still on and i’d have to switch all of the functions every time i wanted to change keyboards.

is it possible to create an option for a second keyboard? I’d like to keep the setting for the eeepc and have a different one for the normal keyboard so that i can switch easily between the two…

Sadly, no… you CAN export the information from the Registry but because of how Windows works, you’d have to re-login after every change… painful stuff but the Windows remapping tech wasn’t meant for changing this often.

Ok, this is silly but… I’ve swapped the capslock and left control, and while it works in everything else, I have a game that partially ignores the change. That is, while typing, the left control key still acts like capslock. However, there is a function in the game that is STILL bound to the left control key. I’m wondering, how is that possible? That function should have been moved to the capslock shouldn’t it?

Hi randy! I just tried downloading Sharpkeys for an apple ultra-thin keyboard I just got. Everything works great, (printscreen, etc) except somehow when I press the F10 key, nothing registers anymore on either my old keyboard or new keyboard. Even when I select it manually from the list and try to assign it to something else or itself and rebooting, there is no change. (it doesn’t say the key has been disabled either) Any ideas how I could get the key back, either through manually editing the registry or any other method?

hey thanks for the reply on that but i must be missing something really obvious then because there doesnt seem to be any way to do this. 00_00 doesnt appear in the map from column and if i press the button, “ok” in the dialog remains greyed out and says the button is disabled. is there a specific section in the registry for all these keyboard commands? if i knew where it was i could probably fix it. thanks again

I was wondering if it would be possible to rewrite a series of key such as control-v to a single key, I’m guessing no. Also would it be possible to get the computer to recognize the CD drive eject key in a manner similar to the FN key, I am running a standard apple bluetooth keyboard with windows vista. Thank You for any time and consideration as my questions probably sound idiotic.

i just downloaded sharpkeys 2.0 and i have a suggestion for it. you should have a button that allows you to have default setting. lets say you make some mistakes or something is wrong with the keys. you should be able to just click on a button and then have all the settings back to normal stock keyboard settings. that would be awesome!