airforever 发表于 2011-2-17 14:33:37

为什么取不到IE版本号

'最大化IE浏览器
Sub MaximizeBrowser1
Set BrowserObject = Description.Create()
BrowserObject("NativeClass").Value = "IEFrame"
Set WindowsBrowser = Desktop.ChildObjects(BrowserObject)
brNum = WindowsBrowser.Count - 1   msgbox("browserNum:"&brNum)
For i = 0 To brNum
ieVersion = WindowsBrowser(i).GetROProperty("Application")
          msgbox("ieVersion:"&ieVersion)
wndTitle = WindowsBrowser(i).GetROProperty("title")
          msgbox("windowTitle:"&wndTitle)
    Set ObjectBrowser = Browser("micclass:=Browser", "index:="&i)
   If Instr(ieVersion,6) > 0 Then
         Window("regexpwndclass:=IEFrame","index:=0","text:="&wndTitle&".*").Maximize
    Else
         WindowsBrowser(i).Maximize
    End If
Next
Set ObjectBrowser = Nothing
Set WindowsBrowser = Nothing
Set BrowserObject = Nothing
End Sub


上面的库函数是先遍历已经打开的IE,然后最大化IE.
只是想问下为什么用
ieVersion = WindowsBrowser(i).GetROProperty("Application")
msgbox("ieVersion:"&ieVersion)
取不到IE版本号?

edisonlzk 发表于 2011-2-17 15:25:53


strComputer = "192.168.1.101"

Set objWMIService = GetObject("winmgmts:\\" & strComputer & _
    "\root\cimv2\Applications\MicrosoftIE")

Set colIESettings = objWMIService.ExecQuery _
    ("Select * from MicrosoftIE_Summary")

For Each strIESetting in colIESettings
    Wscript.Echo "Version for: " & strComputer& strIESetting.Version

Next

airforever 发表于 2011-2-17 15:39:18

回复 2# edisonlzk

不懂.

shingo0109 发表于 2011-2-17 16:36:30

用spy看下, 好像有version这个属性的, LZ试试
msgbox Browser("CreationTime:=0").GetROProperty("version")

airforever 发表于 2011-2-17 17:25:31

回复 4# shingo0109

指定对单个IE取版本我知道怎么取.
现在是在循环里,这样取出来,值为空.

lyscser 发表于 2011-2-17 20:11:59

本帖最后由 lyscser 于 2011-2-17 20:13 编辑

看楼主很明显用的是我的函数,哈哈,在告诉你一个方法

Public Function GetRegeditInfo(regKey)
   Dim myResult:myResult = ""

   Set ShellINFunc = CreateObject("WScript.Shell")
   myResult = ShellINFunc.RegRead(regKey)
   Set ShellINFunc = Nothing

   GetRegeditInfo = myResult
End Function

ieVersion = GetRegeditInfo("HKCU\Software\Microsoft\Internet Explorer\version")
msgbox ieVersion

lyscser 发表于 2011-2-17 20:15:45

'最大化IE浏览器
Sub MaximizeBrowser1
Set BrowserObject = Description.Create()
BrowserObject("Nat ...
airforever 发表于 2011-2-17 14:33 http://bbs.51testing.com/images/common/back.gif


代码不是这样么?
Public Function MaximizeBrowser
        Set BrowserObject = Description.Create()
        BrowserObject("NativeClass").Value = "IEFrame"
        Set WindowsBrowser = Desktop.ChildObjects(BrowserObject)
       
        For i = 0 To WindowsBrowser.Count - 1
                ieVersion = WindowsBrowser(i).GetROProperty("version")
                wndTitle = WindowsBrowser(i).GetROProperty("title")
                Set ObjectBrowser = Browser("micclass:=Browser", "index:=" & i)
                If         Instr(ieVersion,6) > 0 Then
                        Window("regexpwndclass:=IEFrame","index:=0","text:=" & wndTitle & ".*").Maximize
                Else
                        WindowsBrowser(i).Maximize
                End If       
                Set ObjectBrowser = Nothing
        Next
       
        Set WindowsBrowser = Nothing
        Set BrowserObject = Nothing
End Function

airforever 发表于 2011-2-17 22:57:01

回复 7# lyscser


一样的,换汤不换药.
那你说为什么取不到ie的版本号呢?

shingo0109 发表于 2011-2-18 09:11:28

回复 8# airforever


LZ用的是GetROProperty("Application"), 应该是GetROProperty("version")吧,这样就行了

airforever 发表于 2011-2-18 09:17:32

回复 9# shingo0109


发帖之前试过了,仍不行的.

shingo0109 发表于 2011-2-18 09:24:45

本帖最后由 shingo0109 于 2011-2-18 09:26 编辑

回复 10# airforever


我这边打开了3个IE6的浏览器, 用GetROProperty("version")试了下,跑这个脚本可以最大化啊, 不过没试过其他浏览器, 我只有IE6.
version的值是internet explorer 6, 不知LZ取到的version还是为空么?

www4488 发表于 2011-2-24 23:01:37

我发现的问题是 IE7 可以获取version属性,IE8没有version属性,感觉是QTP不支持IE8,或者别的属性,IE6 没环境测不了是什么情况,所以首先要搞清楚 楼主的测试环境是IE几

5555 发表于 2011-2-25 14:29:03

用这个属性,取个版本号不用搞得这么复杂吧,用 SPY看看不就清楚了,下面这句脚本亲试的,可以用。
ie = Browser("CreationTime:=0").GetROProperty("application version")

airforever 发表于 2011-2-25 17:37:06

用这个属性,取个版本号不用搞得这么复杂吧,用 SPY看看不就清楚了,下面这句脚本亲试的,可以用。
ie = B ...
5555 发表于 2011-2-25 14:29 http://bbs.51testing.com/images/common/back.gif


我知道这个单条语句可以取得到啊,
我问的是:调用那个过程,执行过程中为什么不能返回ieVersion.

airforever 发表于 2011-2-25 17:37:53

我发现的问题是 IE7 可以获取version属性,IE8没有version属性,感觉是QTP不支持IE8,或者别的属性,IE6 没 ...
www4488 发表于 2011-2-24 23:01 http://bbs.51testing.com/images/common/back.gif


IE7

xiaoyaoke 发表于 2011-2-25 18:53:27

本帖最后由 xiaoyaoke 于 2011-2-25 18:54 编辑

直接注册表里去取:

   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer

   value: Version

lhd85 发表于 2011-2-26 14:48:09

直接注册表里去取:

   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer

   value: Ve ...
xiaoyaoke 发表于 2011-2-25 18:53 http://bbs.51testing.com/images/common/back.gif

越来越精了吗
页: [1]
查看完整版本: 为什么取不到IE版本号