Robel.Yi 发表于 2008-10-30 11:02:08

QTP关闭多余的browser窗口

今天有朋友问我这个问题,怎么判断打开了几个浏览器窗口,干脆在这里发个帖子吧,其它朋友也可以看到。
   要判断打开了几个浏览器窗口,我们使用description对象就可以了,增加几句代码就可以灵活操作,请看代码:
'#############關閉所有IE窗口##############
Dim WinIe,Ie,k,m
Set WinIe=description.Create()
WinIe("micclass").value="Browser"'所有页面的regexpwndtitle属性值都是" Microsoft Internet Explorer",也可以用其他属性
Set Ie=desktop.ChildObjects(WinIe)
m=Ie.count
Ifm>1 Then
        For k=0 to m-1
        Ie(k).close          ' 0为最后打开的一个,可关闭打开的几个,,循环改成for i=1 to m
        Next
End If
Set ie = nothing
'#############重新打开所需的IE窗口##############
Systemutil.Run "iexplore.exe","http://tw.yahoo.com/index.html"
browser("Yahoo!奇摩").Sync

    如果你要灵活操作,简单的修改下代码就能实现。

[ 本帖最后由 Robel.Yi 于 2008-10-30 11:04 编辑 ]

helius 发表于 2008-10-30 11:32:00

谢谢 分享

helius 发表于 2008-10-30 11:37:05

提供另一个
SystemUtil.CloseProcessByName "iexplore.exe"

13554958201 发表于 2008-10-31 10:40:16

不错,去试试

sogoc 发表于 2008-10-31 10:42:35

Borwser(1).Close
有1,2,3,4...之分的

ivanland 发表于 2008-11-13 16:31:02

学习了

lingxin5013 发表于 2008-11-13 16:47:14

browser 支持 index啊 哈哈 用这个也可以 不过lz我顶你.

没有蛀牙 发表于 2008-11-13 17:28:32

谢谢分享:victory:

jiangfeng9 发表于 2008-11-17 20:52:54

顶你   搂主

fei.ge 发表于 2008-11-18 11:46:16

赞美你楼主

kaidong12 发表于 2009-7-25 16:38:51

回复 1# 的帖子

不错,谢谢分享

kaidong12 发表于 2009-9-12 18:07:48

再提供一个方法:(cmd)
Set objws=CreateObject("wscript.shell")
   objws.Run "tskill iexplore",0      '关闭IE
set objws=nothing

whoamiyaya 发表于 2009-9-13 12:15:03

学习了~~:)

lanqiaolvlang 发表于 2010-12-6 14:30:37

支持,学习了!不错!
页: [1]
查看完整版本: QTP关闭多余的browser窗口