0

我有一个键盘,它有一个左 Windows 键和一个右上下文菜单键。我希望将正确的上下文菜单键用作另一个 Windows 键,因此我使用简单的 AutoHotKey 脚本来“重新映射”键,如下所示:

AppsKey::LWin

这适用于每个 WinKey + (XYZ) 组合,例如 Win+I、Win+X 以及我使用 AutoHotKey 映射的许多其他热键。

然而! 它不适用于Win+L 锁定控制台,这是我想重新映射该键的主要原因之一。任何人有任何想法为什么?


(注意:如果这对任何人有帮助,我已将 Scroll Lock 键用作“锁定控制台”键,而不是使用此脚本:

scrolllock:: DllCall("LockWorkStation") 

但我仍然想知道为什么 Win+L 功能不起作用)

4

3 回答 3

1

I have found that Windows Key L is treated as an extra special thing. I don't think it shows up in the AutoHotkey keyboard history tool. I vaguely remember using it in the past for something else and when maybe Windows 7 came out, it became impossible. Basically, I think it's a security feature.

于 2013-10-11T16:53:38.250 回答
1

就我而言,我想重新映射菜单键 (AppsKey) 的唯一原因是能够锁定我的屏幕(因为该按钮靠近“L”键,而我的自然风格键盘上唯一的 Windows 键远离开)。

如果您不关心 Menu 键作为 Windows 键用于其他任何操作,则可以使用此映射:

AppsKey & L:: DllCall("LockWorkStation")

当然,您也应该能够添加其他对您很重要的组合键。看来您必须明确指定此键。

于 2013-10-16T15:16:18.650 回答
1

更新:这似乎很容易混淆键的状态。我的电脑只是通过输入 L 键锁定。所以我不推荐它。

将 ~ 放在锁定热键表达式前面似乎可以让 AppsKey 充当 LWin 并锁定计算机。

AppsKey:: LWin
~AppsKey & l:: DllCall("LockWorkStation")

我不确定我是否从文档中理解了这个解释,但它似乎适用于此。

如果波浪号前缀应用于自定义修饰键(前缀键),该键也用作其自己的热键,则该热键将在按下该键时触发,而不是延迟到释放该键。例如,上面的 ~RButton 热键会在按下按钮后立即触发。在 [v1.1.14] 之前(或没有波浪号前缀),它会在按钮被释放时触发,但前提是 RButton 和 C 组合未激活。

如果波浪号前缀仅应用于自定义组合而不是非组合热键,则该键的本机功能仍将被阻止。

于 2017-12-14T21:36:33.023 回答