如何使用 AutoHotKey 执行 Outlook 2010 宏?

Ste*_*ane 5 autohotkey macros microsoft-outlook-2010

发现无法将自定义键盘快捷键绑定到我为 Outlook 2010 编写的宏后,我转向 AutoHotKey 并有一个可行的解决方案,但它很笨拙。这是一个脚本,我还有两个执行不同的宏。

#IfWinActive, Inbox
^!1::
Send, {ALTDOWN}{F8}{ALTUP}
WinWaitActive, ahk_class #32770, Macros, 0
Send, ActionSelectedMessages{ALTDOWN}r{ALTUP}
return
Run Code Online (Sandbox Code Playgroud)

它发送 Alt-F8 打开宏对话框,等待窗口打开,然后发送宏的名称,然后发送宏的名称,然后发送 Alt-R 以运行它。这有效,但随着对话框的打开和关闭而缓慢且丑陋。

所以我的问题是,是否有任何方法可以从 AutoHotKey 执行 Outlook 宏,而不会像此解决方案那样造成任何界面副作用?

Ste*_*ane 5

事实证明,这很容易做到。我已经将我的三个宏添加到 Outlook 功能区的主页条中,发现无法像向旧工具栏添加项目时那样绑定快捷键。但我没有注意到的是,快捷方式会自动分配给新的功能区项目,如屏幕截图所示。

替代文字

知道这一点,可以通过三个按键调用这些函数;Alt-H,然后是 Y1、Y2 或 Y3。更进一步,我修改了我的 AutoHotKey 脚本以发送这些击键,现在将它们减少为单个击键 Alt-1、Alt-2 和 Alt-3。这是脚本。

#IfWinActive, ahk_class rctrl_renwnd32
!1::
Send, {ALTDOWN}H{ALTUP}Y1
return

!2::
Send, {ALTDOWN}H{ALTUP}Y2
return

!3::
Send, {ALTDOWN}H{ALTUP}Y3
return
Run Code Online (Sandbox Code Playgroud)