今天继续脚本功能的讲解,这次完成的功能是,到了某个时间执行脚本。

正好,刚刚群里也有群友问这个问题。

定时运行,比如设置9点半,开始运行call xxx(),这种定时有没?

解决这个问题的核心是获取时间。

这里我用的是获取系统时间,具体代码如下:

If Timing(9, 30) Then 
    TracePrint "到时间了!call xxx()"    
Else 
    Delay 1000
End If




Function Timing(hrs,min)
    If hrs= DateTime.Hour() and min=DateTime.minute() Then 
        Timing = true
    Else 
        Timing=false
    End if
End Function

在代码中,我依然是封装了函数方便调用,使用时要循环执行timing()这个函数。

比如这样:

Do
    If Timing(9, 30) Then 
        TracePrint "到时间了!call xxx()"    
    Else 
        Delay 1000
    End If
Loop

每隔一秒钟监测一下是不是到时间了,这个间隔时间最大值是1分钟,如果超过1分钟就会出现到时间了也没有提示。

所以如果你想在等待时间内执行其他操作,必须在间隔1分钟以内就要执行一次监测代码。