nix*_*xda 13 windows keyboard-shortcuts autohotkey
今天我尝试将一些键盘媒体键重新映射到更有用的功能,但没有这样做。
大多数我用来捕获底层键码的程序都无法识别键码(或扫描码)。
例如,其他优秀的工具SharpKeys有一个捕捉模式,它会告诉你你刚刚按下了什么键。我花了一些时间才意识到它告诉我错误的密钥代码在我的测试过程中,我按下了右上角的“星形按钮”,SharpKeys 告诉我这是带有密钥代码的“D”键00_20
。但正确的关键代码是00_181
另一个尝试是这个AutoHotKey 脚本,它也无法识别我不寻常的媒体键
nix*_*xda 10
这是重新映射任何键盘按钮的通用方法。甚至奇怪的
使用KeyCodes(便携式,415 KB)来捕捉关键代码。下载、解压并启动 KeyCodes3.exe。按下你的神秘按钮,你会看到十进制数字的键码
另一种方法是这个 AHK 脚本,它使用键盘钩子和“KeyHistory”
#Persistent
#InstallMouseHook
#InstallKeybdHook
while !(getKeyState("F1", "T"))
KeyHistory
return
esc::exitapp
Run Code Online (Sandbox Code Playgroud)
将数字从十进制转换为十六进制:171
»AB
使用便携式版本的 AutoHotKey重新映射按钮。
下载并解压您选择的 .zip 版本。无需安装。
创建一个新的文本文件并粘贴
#NoEnv, #Persistent, #SingleInstance
vkB5::return ;music node button 181 » B5 do nothing
vkAC::return ;home button 172 » AC do nothing
vkAA::return ;search button 170 » AA do nothing
vkAB::Run, c:\myapp.exe ;star button 171 » AB execute tool
vkB4::Send {Volume_Mute} ;mail button 180 » B4 mute/unmute
Run Code Online (Sandbox Code Playgroud)
vk
代表虚拟键码,后跟要重新映射的十六进制键码::
是重映射运算符。左边是触发器,右边是你的新按钮或动作Send {<my_new_key>}
可以是此列表中的任何键。{vkAB}
用作操作在您的自动启动文件夹中创建一个新的快捷方式,以便在每次启动时启动您的 AHK 脚本。例如
"D:\Tools\AutoHotKey\AutoHotkey.exe" "D:\Tools\AutoHotKey\RemapKeys.ahk"
Run Code Online (Sandbox Code Playgroud)重新启动或手动 AHK 脚本启动后,所有按钮都会重新映射
简而言之:您可以在以下注册表项中找到多媒体键映射:“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey”
例如,邮件键通常会启动默认的邮件应用程序。
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\15\RegisteredApp = "Mail"
如果要替换这个来打开记事本,
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\15\ShellExecute = "notepad.exe"
(如果您想为所有用户等进行修改,则更改 HKLM)
RegisteredApp 表示将调用为该函数注册的应用程序。(如上面的邮件)
关联 表示将打开与特定文件类型关联的应用程序。例如,媒体键默认注册为 .cda,这意味着用于播放音乐 CD 的默认应用程序将在按下该键时打开。
ShellExecute 打开要运行的特定程序。
有关更多详细信息,请阅读这篇文章
归档时间: |
|
查看次数: |
22599 次 |
最近记录: |