这是一个Google Chrome 扩展程序使用热键无法更改。因此我编写了一个脚本将默认热键重新映射Ctrl-Shift-Y
到Alt-1
。
(Default header here is omitted)
#IfWinActive ahk_class Chrome_WidgetWin_1
!1::
Send, ^+y
Return
虽然可以工作,但非常不稳定。通常会有工作一段时间,然后就停止工作,无缘无故地切换。重新启动 Chrome 或脚本也无济于事。
当它不起作用时,我仍然可以看到日志条目。而且我检查了ahk_class
哪些是已知的 Google Chrome 可变的 - 问题不存在。
008: Send,^+y
009: Return (3.56)
答案1
要尝试的事情...
- 替换
SendPlay
为SendInput
(或反之亦然,取决于默认值) - 尝试在脚本执行时按住修饰键,看看是否会发生任何变化
- 将发送语句拆分为两部分,并在发送触发键之前对修饰符进行延迟
- 尝试将击键发送到不同的上层窗口或控制 hwnd
- 确保您的权限与您尝试发送的正在运行的进程的权限不匹配(由于它是一个浏览器,所以不太可能 - 只是一个想法)
第 3 项示例:
Send {LShift Down}{LControl Down}
Sleep 1000 ; lower this to something reasonable if a long delay works
Send y{LControl Up}{LShift Up}
答案2
尝试此扩展. 通过这个,您可以更改 chrome 扩展页面中的热键(在页面末尾)
答案3
我当前的解决办法是模拟上下文菜单单击而不是热键按下。
#IfWinActive ahk_class Chrome_WidgetWin_1
~LAlt & 1::
Send, {AppsKey}
Sleep, 100
Send, y
Sleep, 100
Send, y
Return