2

Я успешно использую скрипт AHK в течение почти года, который отображает комбинации клавиш Ctrl-C и Alt-ESV (сочетание клавиш Excel) с комбинациями клавиш Win и сопоставляет Ctrl-Del с Ctrl-Space, Ctrl-- (удалить строку) ,

Однако иногда (и все чаще и чаще) компьютер считает, что клавиша Win или Ctrl все еще удерживается. Я потратил много времени на поиски исправления, и у меня ничего не получалось, включая различные переписывания сценариев, удаление и переустановку AHK.

Вот мой сценарий:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

;map ctrl-c, ctrl-v, and ctrl-e-s-v (paste values) to win-key combos
#a::Send ^c
#s::Send ^v
#q::Send !e,{s},{v}{Enter}

*CapsLock::Send {Media_Play_Pause}
Return  ;disable CapsLock permanently

;map win-x to ctrl-alt-/ - shortcut to open 'everything.exe', then close it automatically when it's not in focus
#x::
Send ^!/
Sleep, 1000
WinWaitNotActive, ahk_class EVERYTHING
WinClose, ahk_class EVERYTHING
return

;win-z to prt scn
#z::Send {PrintScreen}

;map ctrl-del to select whole line and delete it
~^Del::
Send +{space}
Send ^-
Send {Left}
return

Изменить: у этого человека была та же проблема, что и у меня, хотя ни одно из исправлений, предложенных в этой теме, не помогло мне.

1 ответ1

3

Не знаю, решит ли это проблему, но вы можете попробовать этот скрипт.

; Always run your script as admin
if not A_IsAdmin
{
   Run *RunAs "%A_ScriptFullPath%"  ; Requires v1.0.92.01+
   ExitApp
}
#SingleInstance, Force
#NoEnv
SetBatchLines, -1
SetKeyDelay, 50

;There's a command for disabling CapsLock permanently
SetCapsLockState, AlwaysOff 

return

$#a::^c
$#s::^v
$#z::PrintScreen
$#q::SendEvent, ^!v!v{Enter}
$#x::
    Send ^!/
    Sleep, 1000
    WinWaitNotActive, ahk_class EVERYTHING
    WinClose, ahk_class EVERYTHING
return

$~^Del::SendEvent, +{space}^-{Left}

Протестировал все rempas (кроме win+x), и они, кажется, работают просто отлично. Я не смог продублировать проблему модификатора, которая у вас есть.

Дайте мне знать, если это решило проблему. Если нет, мы можем попытаться настроить огонь.

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