影子是一个会撒谎的精灵,它在虚空中流浪和等待被发现之间;在存在与不存在之间....

您现在的位置是:主页 > 工作记 >

按键精灵_ 在早上8点钟开始工作?


  • 先来说一下,你想要的效果其实并不是脚本每天8点自动运行,而是脚本一直是运行的,只是每天8点开始做有效的运行工作,其他的时间点一直处于“待命状态”。

    如果你认同我上面所说的内容,那么就继续往下看吧。

    解决这个问题有两种方法:

    第一种:先计算你脚本有效的运行时间,比如1个小时,那么剩下的“待命状态”的时间就是23个小时,换句话说就是你的脚本执行完一次以后,要等待23个小时,在按键精灵里等待时间的命令就是delay,不过要换算,因为delay的参数单位毫秒,你要把23小时等于多少毫秒算出来,建议用计算器算一下。

    这种方法有一个缺点,就是你必须要在8点执行首次操作,它是24小时完成一个运行周期,并不会真的在8点执行,而是每天在同一个固定的时间执行,这个时间点取决于你首次运行的开始时间。

    第二种方法:到8点就开始执行脚本。

    原理是获取当前系统时间,然后判断获取的时间是不是8点,如果是8点就开始执行有效脚本,如果不是8点,那么重新获取系统时间,再次判断,这个过程重复进行,直到8点为止。

    缺点是脚本比较累一直在做判断,优点是能够精准判断。

    代码如下:

    Do
    Dim t
    t = Now()
    TracePrint t
    Dim r
    r = UTF8.Right(t, 13)
    TracePrint r
    Dim l
    l = UTF8.Left(r, 5)
    TracePrint l
    If l = "08:00" Then
    TracePrint "调试成功,用你的脚本替换本行"
    Exit Do
    Elseif l = "08:01" Then
    TracePrint "调试成功,用你的脚本替换本行"
    Exit Do
    Else
    TracePrint "调试失败"
    End If
    Delay 60000
    Loop

    稍微解释一下:

    1. 为了看着方便,变量我没有合并。

    2. 由于7个“星期”的英文所写长度不一样,所以导致日期的长度也是不一样的,那么在获取8点的方法上,我选择了从后往前找的办法。

    3. 在判断的时候为了防止脚本由于卡顿错过了8点而无法有效运行,所以追加了一个判断,就是在8点01分也是可以执行脚本。当然这是在8点没有开始脚本,如果开始了,就不会在继续判断8点01分了。

    附上一个我运行的截图:

    怎么让你的按键精灵脚本在早上8点钟开始工作?



  • 上一篇:按键精灵_ 通过获取文字坐标进行点击

    下一篇:没有了