NND花了我3个小时的时间研究这东西。控件法,鼠标点击法,关闭窗口法都没能够解决。咱坛子上搜索出来也是没有下文的帖子。
现在贴出方法,比较另类,大家别笑。
引起网页alert前的代码Run("close.exe")
MouseClick("left",980,737,1)
意思是程序走到这一步调用close.exe,然后点击会导致网页alert的左边。
那么我们的close.exe里面写了什么东西呢?WinWaitActive("来自网页的消息","建议在WAN口参数修改后重新启动路由器。")
If WinActive("来自网页的消息","建议在WAN口参数修改后重新启动路由器。") Then
Send("{ENTER}")
endif
意思就是先运行close.exe(close.au3),之后鼠标点击引起alert的按钮,这个时候我们的主程序已经暂停了,任凭你呼唤他就是不起作用了,但不用怕,因为我们运行了非主程序进程的close.exe,它会检测到你网页alert了,就发送了个enter。
这样问题就解决了。
如果还有其他alert,confirm神码的,依照样子写在close.au3里就行了。 |