找回密码
 加入
搜索
查看: 1720|回复: 4

如何不让网页弹出?

[复制链接]
发表于 2009-11-14 23:07:51 | 显示全部楼层 |阅读模式
本帖最后由 oemxp 于 2009-11-14 23:45 编辑

问了好多问题都基本上解决了,这个估计AU3解决不了。
下面例子下的代码如果访问一个会弹窗的网页,就一定会有新IE窗口弹出来,我要怎么才能让他不弹出新IE窗口,我试过
processwait ("iexplore.exe")
processclose ("iexplore.exe")

有的网页弹窗用上面就可以,但是在弹窗关闭前会有个IE窗口闪一下才关掉 ,闪一下也不是最大的问题,最主要的是如果你正好开了几个网页在看网页,只要一运行加了以上代码的程式,所有正在运行的IE都会关闭,一运行我的程式就把人家在看网页的窗口关了,这肯定不行的,请问要如何解决?
还有默认浏览器要是不是IE上面的代码也没有用,因为弹出的窗口是其它浏览器的。


例子:
#include <GUIConstantsEx.au3>
#include <IE.au3>
$Form = GUICreate("建议IE", 633, 454, 80, 50)
$oIE = _IECreateEmbedded ()
GUICtrlCreateObj($oIE,16, 16, 601, 377)
GUISetState(@SW_SHOW)
Opt("GUIOnEventMode", 1)
GUISetOnEvent($GUI_EVENT_CLOSE, "Event") ;关闭

_Go()

While 1
        Sleep(10)
WEnd

Func _Go();加载网页


        _IENavigate ($oIE, "http://m.qvodsou.com/2009/11/307982.html")

EndFunc

Func Event()
        Switch @GUI_CtrlId
        Case $GUI_EVENT_CLOSE
        Exit
        EndSwitch
EndFunc
发表于 2009-11-15 11:54:30 | 显示全部楼层
检测IE刚弹出来的时候的窗口标题,都是Microsoft Internet Explorer,所以用以下语句检测。
       If WinExists("Microsoft Internet Explorer") Then
                WinClose("Microsoft Internet Explorer")
EndIf
 楼主| 发表于 2009-11-15 12:09:37 | 显示全部楼层
楼上的兄弟,我试了没用,一样弹,估计AU3就没有这个功能。
发表于 2009-11-15 20:55:49 | 显示全部楼层
如果没用的话,那是你的使用方法不正确,把它做成一个函数,然后在程序开始之前用AdlibEnable 来设置调用这个函数的时间,比如每隔250毫秒调用一次,有的话就关闭,没有的话就继续。
AdlibEnable
--------------------------------------------------------------------------------
启用 Adlib 功能.
AdlibEnable ( "函数名" [, 时间] )
 楼主| 发表于 2009-11-16 15:15:41 | 显示全部楼层
说了没用,有时人家装了其它浏览器并设置为了默认浏览器怎么办?
就算人家没装其它浏览器,你这一关,连其它开着的IE也会关掉。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 11:59 , Processed in 0.078917 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表