1

我需要强制在后台的 Outlook 每 2 秒检查一次新电子邮件。所以我写了一个下面的脚本,但它没有这样做。怎么了?我不希望脚本干扰我的工作并将焦点放在 Outlook 窗口上。“ahk_class rctrl_renwnd32”是正确的,我用“WinActivate,ahk_class rctrl_renwnd32”检查它并且它工作。

Loop
{
    ControlSend,, {F9}, ahk_class rctrl_renwnd32
    Sleep 2000 ; Wait 2 seconds
}
4

1 回答 1

1

您的代码中没有错误。问题可能出在接收应用程序中。当我在记事本中对此进行测试F5时,当记事本窗口在我的第二个屏幕上的某处打开时,将执行(打印时间和日期)。一旦我最小化记事本,它将不再执行F5,但它仍然接受A{Enter}B{Enter}C{Enter}最小化时的字符串。

!q::
ControlSend,, {F5}A{Enter}B{Enter}C{Enter}, ahk_class Notepad
Return

解决方案,当您将窗口保持在屏幕上的某个位置(无需获得焦点)时,尝试这是否有效。

我过去使用过 Outlook,并记得这F9需要一些时间来执行。每 2 秒运行一次看起来有点矫枉过正。如果及时收到电子邮件对您愿意通过刷新请求“杀死”邮件服务器非常重要,那么我将与您的 IT 支持人员讨论解决方案。

于 2013-02-24T09:06:10.500 回答