Вот расширение для 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)

3 ответа3

0

Мой текущий грязный обходной путь - эмулировать нажатие контекстного меню вместо нажатия горячих клавиш.

#IfWinActive ahk_class Chrome_WidgetWin_1
~LAlt & 1::
   Send, {AppsKey}
   Sleep, 100
   Send, y
   Sleep, 100
   Send, y
Return
0

Вещи, чтобы попробовать ...

  1. Замените SendPlay на SendInput (или наоборот, в зависимости от значения по умолчанию)
  2. Попробуйте удерживать модификаторы самостоятельно во время выполнения скрипта и посмотрите, изменит ли это что-нибудь
  3. Разделите оператор отправки на 2 части и установите задержку для модификаторов перед отправкой ключа триггера.
  4. Попробуйте отправить нажатия клавиш в другое окно верхнего уровня или управляйте hwnd
  5. Убедитесь, что у вас нет несоответствия привилегий с запущенным процессом, который вы пытаетесь отправить (крайне маловероятно, так как это браузер - просто мысль)

Пример пункта 3:

Send {LShift Down}{LControl Down}
Sleep 1000        ; lower this to something reasonable if a long delay works
Send y{LControl Up}{LShift Up}
0

попробуйте это расширение. с этим вы можете изменить горячие клавиши на странице расширений Chrome (в конце страницы)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .