1

我想对一些 Fnn 和 shift-Fnn 键进行编程,并从窗口分配的内容中清除其余的键。只要足够长的时间来运行 telnet 或 putty 会话,然后我想让他们恢复以赢得 std。我在 AutoHotkey 中使用了一个脚本,它主要工作,但是我将许多未使用的键分配为 SHIFT 键,现在 shift-F4 经常会打出未移位的 F4 字符串 {超过一半的时间我点击它。} 有没有比仅仅在所有这些键上敲击 SHIFT 更好的方法来核对 Windows 预设,或者我可以对脚本进行一些模糊的调整以减轻 SHIFT kbd 钩子上的负载?脚本如下;请注意,如果重要的话,大多数行都有很多尾随空格...在 win8 笔记本电脑和 XP 桌面上测试,结果相同。

#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.
SetWorkingDir C:\bin  ; Ensures a consistent starting directory.
F1::send, EX`r 
F2::Shift         
F3::Shift      
F4::send, FI`r    
F5::Shift       
F6::Shift  
F7::Shift       
F8::Shift     
F9::send, OFF`r   
F10::send, PROD  
F11::send, `r  
F12::send, END`r 
+F1::send, FD   
+F2::Shift   
+F3::Shift   
+F4::send,  EM5 
+F5::Shift        
+F6::Shift  
+F7::Shift    
+F8::Shift    
+F9::send, `r  
+F10::send, PYR`r 
+F11::send, SYSP 
+F12::Shift   
^F12::ExitApp  ; control-F12 will remove all these
$~CapsLock Up::SetCapsLockState Off  ; regress capslock to a SHIFT
4

1 回答 1

2

尝试了类似的方法来“禁用”Windows 对 WIN 键的保持,我发现没有办法禁用所有这些 - 只有少数。

但是,正如您所发现的,Autohotkey 可以覆盖 Windows 热键。

如果您只想禁用 Windows 对这些键的使用(如果我理解正确的话),您可以尝试以下操作:

F11::
F12::
return

只要脚本正在运行,这将有效地禁止在任何地方使用 F11 和 F12。

(不,尾随空格没有任何区别)

于 2013-07-06T00:33:04.470 回答