Simulating the Windows key on an old keyboard

30

8

I'm using a very old keyboard that doesn't have a physical Windows key — it does have a 5/180° connector and an AT/XT switch on the back — but I don't want to completely miss out on the functionality of the Windows key.

Is there some group of keys in Windows 7 Pro that simulates Win when used together? In other words, I want to be able to take any key combination that uses Win, mentally remove Win and drop in this other group of keys and have the original combo work.

If no such combination exists, how can I create one?

I know that I could just plug in a newer keyboard that has a Windows key, but the whole point of this question is to avoid that. None of the existing questions seem to address this; the closest is this one, but it doesn't actually say how to create the mapping.

This is for my work computer, so "install this utility/plugin" isn't a good option for me. Feel free to answer with those for the benefit of others, though.

Pops

Posted 2011-09-08T18:42:56.720

Reputation: 7 353

1Look at AutoIt or AutoHotKey, you can setup a hotkey combo for the winkey. – MaQleod – 2011-09-08T18:48:06.763

I didn't think Windows 7 would run on anything that could accept a keyboard with a 5/180 connector! – Iszi – 2011-09-08T20:04:20.037

@Iszi, you're probably right! I happen to have a little PS/2 converter. – Pops – 2011-09-08T22:08:09.763

Anecdote warning: @Iszi win7-x64 ultimate runs fine on my core i7 with IBM Model M (a solid keyboard with PS/2 connector, made in 1991!). And a coworker is replacing his DIN5 model M because the DIN to PS2 plug is worn out.

– Hennes – 2014-03-09T16:30:19.917

Answers

17

Remap your capslock key with a quick registry hack? The Caps lock key is worthless.

Paste this into a file called something like remap_caps_to_windows.reg and double click it. You must restart for the changes to take affect

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,5c,e0,3a,00,00,00,00,00

Zoredache

Posted 2011-09-08T18:42:56.720

Reputation: 18 453

Do I need to restart? I tried this on Windows 10, no luck – Jonathan – 2018-12-04T02:37:51.217

1@Jonathan yes, after making the suggested registry changes you need to restart. I do suggest using 'SharpKeys' as suggested in one of the other answers instead of manually making the registry edits though. It makes things easier. – Zoredache – 2018-12-04T08:49:47.890

Hey, that must be the approach mentioned in the related post. I'll give it a try once I figure out how to back up the current setting. – Pops – 2011-09-08T19:35:12.790

Just open regedit, go to that subkey HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout right click and choose export. But there really isn't much to backup. On a clean install of Windows there is no Scancode Map setting in the registry. So if you don't like what this does simply delete the Scancode Map value. – Zoredache – 2011-09-08T19:38:29.760

BTW, what this does is a bit different from what the Microsoft tool in the other answer does. That builds a new layout, this just applies a small remapping to your current layout. The results could be similar but the method is different. – Zoredache – 2011-09-08T19:40:30.010

@Zoredache: There are GUI interfaces for doing the same thing, as mentioned in my answer. – paradroid – 2011-09-08T20:03:58.860

@paradroid, I know, but I was just saying that the tool suggested in this answer didn't tweak the scanmap. BTW, what is so great about GUIs. We are superusers after all, we like messing around in the registry. :) Also, I was paying close attention to his no external software requirement.

– Zoredache – 2011-09-08T20:07:41.297

@Zoredache: I like doing things directly as well, but in this case a GUI can make things a lot easier. – paradroid – 2011-09-08T20:10:35.790

I've confirmed that the remapping and "uninstall" methods both work. – Pops – 2011-10-25T16:54:56.523

Don't claim the caps lock key is worthless, I actually use it. Not very often but it is a nice key to have and I would miss it if it disappeared! – Waxhead – 2013-12-08T21:36:17.450

11

CTRL-ESC brings up the Start Menu.

Unfortunately, it does not allow the other windows key shortcut functions. For instance CTRL-ESC-Pause/Break will not bring up system properties. And CTRL-ESC-R will only bring up Run if you release CTRL-ESC before striking R, and then it'll only work if there aren't any entries in your Start Menu beginning with "R".

music2myear

Posted 2011-09-08T18:42:56.720

Reputation: 34 957

5

You could create a custom keyboard layout with the key remapped.

Microsoft Keyboard Layout Creator may be able to do the job.

RJFalconer

Posted 2011-09-08T18:42:56.720

Reputation: 9 791

4

In Windows 10 the keymap suggested in the accepted answer maps Z and M to B and maps B to Z.

It was funny until I realized my username has an "M" in it. Thankfully Win10 has the on screen keyboard option in the accessibility options during login, but this wouldn't show up for the "Run as administrator" dialog.

Anyway, using SharpKeys I found the correct map for CAPS LOCK to Win is this:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,5b,e0,3a,00,00,00,00,00

music2myear

Posted 2011-09-08T18:42:56.720

Reputation: 34 957

I did not have that issue, do you use a U.S. keyboard layout? DVORAK? International U.S? – Jonathan – 2018-12-04T03:02:12.347

Nope, an old Compaq QWERTY from the mid 90s – music2myear – 2018-12-04T04:40:12.570

4

You can remap any key to be a Windows key using KeyTweak.

It's just a GUI interface to the registry, so does the same thing as what Zoredache suggests in his answer.

KeyTweak

paradroid

Posted 2011-09-08T18:42:56.720

Reputation: 20 970

1

In AutoIt, this should do it using Ctrl + Shift + w:

HotKeySet("^+w", "WinKey")

While 1
    Sleep(100)
WEnd

Func WinKey()
    Send("#")
EndFunc

AutoIt does not need to be installed on a computer for it to run. It can be compiled into an executable that contains the interpreter so that it can run on any windows machine. You also don't need to install it to write and compile, you can simply use the zip download.

MaQleod

Posted 2011-09-08T18:42:56.720

Reputation: 12 560

1Can you not use AutoHotkey to avoid that sleep() spinlock? – RJFalconer – 2011-09-08T18:58:07.423

@RJFalconer, the while loop is what keeps it running indefinitely, the sleep(100) keeps it from maxing out the processor. Even if you don't explicitly state this in an AutoHotkey script, it still employs similar behavior, it is inherently necessary in programming to loop to keep a program or script running. – MaQleod – 2011-09-08T19:01:08.123

I used autohotkey and set it to be F1, while I was there I also set F6-12 as multimedia keys. – Ziv – 2011-09-13T12:11:34.900