我可以切换键盘上的alt和ctrl键吗?[重复]


25

我是Mac的老用户,但我只是建造了一台PC。不喜欢Ctrl和Alt键的位置。我一直期望ctrl键是Macbook上的命令键。我可以以某种方式转移掉这些吗?我正在运行Windows 10,并且是最新的。


您可能会想到,这是一个非常受欢迎的请求。尽管该过程可能涉及一些小问题,但其他社区成员还是使用AutoHotkey来完成的,如此此处所示
Run5k

由于某些原因,我会说不这样做。首先,这使您无法定期学习使用键盘-如果您需要使用他人的计算机,这将给您带来困难。而且,这将使其他人很难使用您的计算机。最后,根据我的经验(有时需要使用Mac才能工作的Windows用户),第一次使用该更改只需几天,而在我之间进行更改只需要一两分钟。在一天中的计算机之间切换。
Moshe Katz


3
规律性不是我关心的。除了我自己,没有人会使用我的机器。
zjdrummond

我会建议这种解决方案superuser.com/questions/36920/how-can-i-remap-a-keyboard-key而不是AutoHotkey解决方案。在Windows中重新映射密钥可以通过修改注册表和使用SharpKeys实用程序(对注册表进行修改并且不需要保持全时运行来拦截密钥)来完成。
music2myear

Answers:


16

要重新映射键盘上的任何物理键,都需要一个注册表项。

在其中,[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
您可以使用名称创建一个密钥Scancode Map。它可以将任何键重定向到另一个键或将其禁用。

该键是一个十六进制值,具有以下含义:

00,00,00,00 Header: Version. Set to all zeroes.
00,00,00,00 Header: Flags. Set to all zeroes.
05,00,00,00 5 entries in the map (including null entry).
38,00,1d,00 Left CTRL -> Left ALT (can also be another key).
1d,00,38,00 Left ALT -> Left CTRL.
38,e0,1d,e0 Right CTRL -> Right ALT.
1d,e0,38,e0 Right ALT -> Right CTRL.
00,00,00,00 Null entry.

要交换CTRL和ALT键,您需要四个条目(加上null)。
Left-CTRL(1d 00),左Left-ALT(38 00),Right-CTRL(1d e0)和Right-ALT(38 e0)。

因此,您可以创建一个.reg文件,如下所示: Disable_CTRL-key.reg

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,05,00,00,00,38,00,1d,00,1d,00,38,00,38,e0,1d,e0,1d,e0,38,e0,00,00,00,00

执行(双击).reg文件,然后注销并重新登录(或重新启动计算机)。现在您的CTRL和ALT键应该已经交换了。

其他有用的关键要知道:

1d 00    Left Ctrl
1d e0    Right Ctrl
38 00    Left Alt
38 e0    Right Alt
5b e0    Left Windows Key
5c e0    Right Windows Key
5d e0    Windows Menu Key

基于此答案里克

如果您不满意更改注册表,或者也想要其他键,则可以使用程序SharpKeys更轻松地对其进行编辑。它还具有所有键的便捷列表,因此您只需将其添加到窗口中即可。

尽管SharpKeys(也许-我实际上不能验证它是否确实起作用)曾经是一个替代选项,但是SharpKeys的当前自述文件指出,SharpKeys不能用于此目的,尽管它可以用于其他键的重新映射。(h / t gabe


另外,我找到了Windows Server 2003资源工具包工具,其中包含一个名为的小型可执行文件remapkey.exe,大小仅为340KB。它是一个图形程序,可让您重新映射键盘的键。与任何手动更改一样,需要重新启动。在Windows Vista +中,它将需要管理员权限。

在寻找一些屏幕截图时,我在此网站上遇到了另一个建议的答案

这项工作的最佳工具是微软自己的remapkey,可作为部分Windows资源工具包。(该链接适用于Windows 2003;多年来,我已经在许多版本的Windows(包括Windows 7)上成功使用了该链接;尚未测试Windows 8)。

remapkey我相信,它将直接将映射写入注册表,并且不需要正在运行的进程。您只需从实际键拖动到所需键,然后保存。

remapkey屏幕截图


进一步阅读:


在Windows 10 remapkey为我工作
MountainX莫妮卡切廖

Windows 10上remapkey的另一个优点是,在Windows 10上安装Windows 2003 Kit感觉有些粗略,但是一切正常。它肯定胜过总是在后台运行自动热键,谢谢!
PKKid

remapkey很棒。你呢
CopperCash

remapkey在Windows 10中对我不起作用
Seph Reed

10

密钥重新映射实用程序Sharpkeys下载)应该可以让您重新绑定密钥。(来源

脚步:

  1. 打开Sharpkeys,然后单击添加。
  2. 将以下两个条目添加为键映射

    From:                           To:
    Special: Left Alt (00_38)       Special: Left Ctrl (00_1D)
    Special: Left Ctrl (00_1D)      Special: Left Alt (00_38)
    
  3. 确认您的重新映射,然后单击“ 写入注册表”


1
这不会让您交换密钥,因此很遗憾,这将无法工作。 github.com/randyrants/sharpkeys
William

见我的评论superuser.com/questions/1190329/...与@William同意
加布

现在可以使用SharpKeys互相交换密钥。最新的自述文件可以在这里找到:github.com/randyrants/sharpkeys 它在页面上指出SharpShars将“允许您彼此交换两个密钥-例如,您可以将Left Windows与Left Control交换,反之亦然”
Arthur Rimbun
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.