Link to home
Start Free TrialLog in
Avatar of gesman
gesman

asked on

Reassign or disable "Windows" Key on a laptop keyboard.

Hello,
I have toshiba satellite M30 laptop and run win XP home on it. It's keyboard has couple of keys that I never use such as "windows" key. Clicking this "Windows" key makes "Start" menu pop up. Now I use source code editor where I want to assign one of the editing functions to this key.
I successfully did that and when I press this key while in the editor - editor does it's operation nicely, but after that Windows "Start" menu keeps always popping up.
Can I disable this key for Windows somehow to avoid it popping the "Start" menu every time?

Thanks in advance
ASKER CERTIFIED SOLUTION
Avatar of LeeTutor
LeeTutor
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
To disable Windows key  at runtime you must hook keyboard.
Unfortunately to do this system wide it must be done in dll.

There is a source code and sample app in Pieter's Delphi Corner: http://home.hccnet.nl/p.zylstra/downloads.htm
Winhook v1.00 source download: http://home.hccnet.nl/p.zylstra/downloads/winhook.zip

Also I found a small, working and freeware app that do this very well (tested on Windows XP):
http://downloads.planetmirror.com/pub/majorgeeks/input/wkeykill17.zip
char c;
// disable key
SystemParametersInfo ( SPI_SCREENSAVERRUNNING, 1, (void*) &c, 0);

char c;
// enable key
SystemParametersInfo ( SPI_SCREENSAVERRUNNING, 0, (void*) &c, 0);