AutoIT中的循环网页屏幕保护程序在本地文件路径上打破

时间:2017-07-10 16:06:14

标签: hyperlink autoit screensaver

我正在尝试在AutoIT中创建一种伪屏幕保护程序。我目前正在检测空闲时间,打开IE并导航到页面。我随机选择一个随机数并使用case语句转到页面。它遍历我的机器上的实时网页和本地html页面,这些页面嵌入了超链接。

但是,出于某种原因,当它到达我用于显示在本地计算机上运行的自定义HTML网页的本地文件路径时,代码不会继续。它不会导航到另一个页面。它正在改变案例,但没有导航到案例中的设置。它几乎就像它到达本地文件路径一样,它不会改变它。

有什么想法吗?

#include <Timers.au3>
#include <IE.au3>

$oIE = _IECreate("http://www.google.com/")
$InactivityTrigger = 5*1000
$PID = 0

Sleep(3*1000)
Send("{F11}")

While True
   $InactiveFor = _Timer_GetIdleTime()

  If $InactiveFor >= $InactivityTrigger And Not $PID Then
  Switch Random(0, 5, 1)
     Case 0
        $PID = _IENavigate($oIE, "https://www.google.com")
        Send("{0}")
     Case 1
        $PID = _IENavigate($oIE, "https://www.yahoo.com")
        Send("{2}")
     Case 2
        $PID = _IENavigate($oIE, "https://www.bing.com")
        Send("{3}")
     Case 3
        $PID = _IENavigate($oIE, "C:\Users\test.html")
        Send("{4}")
     Case 4
        $PID = _IENavigate($oIE, "C:\Users\test2.html")
        Send("{5}")
     Case 5
        $PID = _IENavigate($oIE, "C:\Users\test3.html")
        Send("{6}")
  EndSwitch

  ConsoleWrite("started" & @CRLF)

  ElseIf $InactiveFor < $InactivityTrigger And $PID Then
  ProcessClose($PID)
  $PID = 0
  ConsoleWrite("stopped" & @CRLF)

EndIf

Wend

0 个答案:

没有答案