AutoHotKey脚本随机失败?

时间:2014-04-10 16:14:09

标签: autohotkey

我是AutoHotKey的新手,所以这对我来说可能是个蠢蠢欲动。我昨天把它放在一起,整天都很好。今天它无法在随机时间完全执行。

我正在做的是强制Chrome使用系统打印对话框,然后只打印第一页。

!NumpadDiv::
{
    Send ^P              ; CTRL+SHIFT+p forces System Print Dialog
    WinWait, Print, , 2  ; Wait for Print Dialog to appear
    if ErrorLevel
    {
        MsgBox, WinWait timed out.
        return
    }
    else
    {
        IfWinActive, Print    ; Added to ensure Print window was active
        {
        SetKeyDelay, 300    ; Upped key delay. Thought this may help. It hasn't
            Send {TAB 4}        ; Tabs over to Page Range
            Send 1              ; Print only first page
            Send {Enter}
        }
    }
    return
}

今天脚本开始随机失败。要么它没有标记到页面范围,并且将打印所有页面,或者它将标签到它,输入1然后不打印。在这两种情况下,它都会触发我的PC的错误声音。任何帮助将不胜感激,我很困惑,因为昨天整天没有问题。

1 个答案:

答案 0 :(得分:0)

我也想在Lotus Notes中做类似的事情。我根据MCL的建议重新审视了clangford1174的代码,如下所示。它适用于我的Win7机器。

!NumpadDiv::
{
    Send ^P              ; CTRL+SHIFT+p forces System Print Dialog
    WinWait, Print, , 2  ; Wait for Print Dialog to appear
    if ErrorLevel
    {
        MsgBox, WinWait timed out.
        return
    }
    else
    {   
        ControlSetText, Edit4, 1
        Send {Enter}        
    }
    return
}

BTW,选择带AHK的打印机的这个主题也是相关的。 How to select printer and print with AutoHotKey