Articles of autohotkey

为什么AutoHotkey响应“系统无法find文件”错误?

我是新来的AutoHotkey,不明白为什么这个脚本给我的错误: Failed to launch program or document Action: <C:\Windows\System32\msg.exe> Params: <* "Initiated."> Specifically: The system cannot find the file specified. 这是我的test.ahk文件中的简单脚本: Run, "C:\Windows\System32\msg.exe" * "Initiated." 我已经validation了msg.exe文件位于c:\ Windows \ System32文件夹中,并且可以在没有脚本的情况下从命令提示符下单击msg.exe程序来运行它。 我也可以创buildmsg.exe的快捷方式,它的工作原理,但我不知道如何获得test.ahk脚本文件来看看它。 我尝试运行脚本(通过单击test.ahk文件),作为pipe理员,但得到相同的错误。

如何使用Autohotkey将capslock密钥重新映射到EMACS super?

这个网站显示了如何使用registry。 http://www.emacswiki.org/emacs/JonasOster

Autohotkey中的全局键盘function?

这个脚本“自动按下”E,同时按住它。 $e:: While GetKeyState("e","P") { Random, r, 50, 250 sleep r Send e } return 有没有办法全球调用这个函数的任何键? 例如:按住A,会自动按A,Z会自动按Z. 没有手动分配代码上的每个可能的密钥。

在“locking”屏幕后面会发生什么?

我一直在研究Windows自动化和监控。 当我locking一台Windows机器的屏幕时究竟发生了什么? 目前我正在使用Windows 7,如果切换到Vista或服务器版本,行为是否有很大差异? 还有一个可以通过api访问的桌面吗? 我知道我仍然可以发送按键和鼠标点击到特定的窗口(通过ControlSend和ControlClick ),但似乎没有“桌面”本身。 是否有人能够对这件事情有所了解,或者将我指向一个可读的来源,在那里我可以概览这个话题?

AutoHotKey可以切换键盘映射吗?

所以我试图在AutoHotKey中编写一个简单的脚本,它将使用NumLock(我已经映射到我的registry中的大写字母)作为开关将我的方向键转换为数字键盘的NAB键。 我的脚本如下: GetKeyState, state, NumLock, T if state = D { Up::Numpad8 Down::Numpad2 Left::Numpad4 Right::Numpad6 Enter::Numpad5 } if state = U { $Up::Up $Down::Down $Left::Left $Right::Right $Enter::Enter } Return 但是,我得到一个错误,说第15行重复。我如何告诉AutoHotKey将我的密钥返回到其原始密钥指示? 我试图留下一个“其他”部分空白,而不是“if state = U”部分,但是当再次切换时,这些键保持在它们改变的状态。 我确定有一些简单的我错过了。

如何将AltGr键全局映射到Alt键?

我想我的AltGr键行为完全像左Alt 。 通常,我使用Autohotkey来做这种事情,但是我对不同的解决scheme是开放的。 我试过这个: LControl & RAlt::Alt 和Autohotkey显示错误关于Alt不被识别的动作。 然后我尝试了下面的代码: LControl & RAlt:: Send {Alt down} KeyWait LCtrl KeyWait Ralt Send {Alt up} return 哪种工作 – 我能够使用AltGr键来访问热键,但它仍然有不同的performance: 当我按下并释放左侧的Alt时 ,当前程序中的第一个菜单项将获得焦点。 用这个脚本按下并释放AltGr什么也不做。 有任何想法吗? 这甚至可以用Autohotkey? (重新右键Ctrl和Shift到左边的兄弟姐妹是小菜一碟) 注意:我试着在代码LAlt Alt切换到LAlt ,这没有任何区别。

我怎样才能更改密钥更改在Windows 10中的桌面与autohotkey?

Windows 10终于有了多桌面,你可以用ctrl + win +右(或左)键来切换桌面。 这是一个很好的function,但你有两个用两只手来切换桌面。 我试图用autohotkey这样的键来映射,所以我可以用一只手,另一只手放在鼠标中。 ctrl + mouse wheel up –> ctrl + win + right ctrl + mouse wheel down –> ctrl + win + left 消息框出现所以ctrl +轮子正在工作,但它不会切换桌面。 ~LControl & WheelUp:: MsgBox, Go to desktop right. Send, {ctrl up}{lwin ctrl righ} return ~LControl & WheelDown:: MsgBox, Go to desktop left. Send, {ctrl […]

ControlSend使用SetKeyDelay时,随机发送错误字符(修改和未修改),0,0

我自我回答这个问题,因为我已经看到它在互联网上的问题,但几乎没有有用的答案,而且我肯定没有堆栈溢出的决议。 示例代码 考虑这个代码,它只是写几行shell命令: ^0:: SetKeyDelay, 0, 0 myWindow = ahk_exe Notepad.exe ControlSend, , set c=".cshrc-andrew.cheong"`n, %myWindow% ControlSend, , set v=".vimrc-andrew.cheong"`n, %myWindow% ControlSend, , foreach d ( /userhome/andrew.cheong /home/$USER /data/$USER )`n, %myWindow% ControlSend, , if ( -e $d/$c ) source $d/$c`n, %myWindow% ControlSend, , if ( -e $d/$v ) alias vim "vim -N -u $d/$v"`n, %myWindow% […]

在使用罗马尼亚程序员布局键入罗马尼亚字符的同时,使用Autohotkey重新映射Alt / Ctrl / Win,窗口变得疯狂

我使用Autohotkey重新映射了一些键,如下所示: LWin::LAlt LCtrl::LWin LAlt::LCtrl 我正在使用罗马尼亚(程序员)键盘布局的Windows 7。 例如,如果我想inpută,则命中RAlt + a。 这就是所谓的“程序员”,因为它是一个美国的QWERTY布局,额外的RAlt激活。 但是,如果我运行我的Autohotkey脚本,然后发送一个RAlt + a / s / t / i,系统就会发疯。 即使我closures了Autohotkey,它仍然performance得如此。 我必须注销/重新启动或按魔术键序列来解决它(我还没有弄清楚什么序列)。 我正在猜测的是,Alt以某种方式卡住了,我按下的每个按键都与Alt混合在一起。 按Esc键切换Windows,在应用程序中按F键打开文件菜单等。 这是一个Autohotkey错误还是我做错了什么? 我过去曾经使用过SharpKeys,但是由于一些要求 – 共享电脑 – 我需要每个用户的东西,最好能closures。 Autohotkey本来是完美的。 谢谢。 后期编辑 – 解决scheme是什么576i(第一部分+键映射,以取代我以前使用的键盘映射 – 我放弃了罗马尼亚程序员) ; Remap Ctrl to Win, Win to Alt, Alt to Ctrl – credit to 579i $*LWin::Send {LAlt Down} $*LWin […]

Autohotkey:发送5位hexUnicode字符

我一直在试图find一种方法来重新映射我的键盘和发送5位hexUnicode字符,这里描述的方法: ahk发送只支持4位hex代码{U + nnnn},我知​​道在过去,autohotkey没有本地支持unicode,所以需要一些function才能做到这一点,也许这就是我的解决scheme。 例: #If GetKeyState("CapsLock","T") +u::Send {U+1D4B0} 结果是풰而不是and,풰的代码是{U + D4B0},这意味着AHK只读取最后4位数字。 即使我需要做出新的function来实现这个function,我该如何修复它? 谢谢 -标记