AntonioNikki 发表于 2012-7-12 11:07:29

关于qtp句柄调用的问题

一个非常简短的脚本,是调用句柄的问题。
:) 如下,请大家帮忙看看是什么原因,非常感谢:

systemutil.Run "iexplore.exe"
Extern.Declare micHwnd, "GetForegroundWindow", "user32.dll", "GetForegroundWindow"

hwnd = Extern.GetForegroundWindow()
msgbox hwnd

Browser("hwnd:=" & hwnd).Navigate "http://www.baidu.com"

错误如下:
Cannot identify the object "[ Browser ]" (of class Browser). Verify that this object's properties match an object currently displayed in your application.
Line (7): "Browser("hwnd:=" & hwnd).Navigate "http://www.baidu.com"".

hsjzfling 发表于 2012-7-12 12:01:14

该方法不太可行,这样取到的hwnd应该是与Browser的Native Property中的HWND一致,而与Identification Property不一定一样,如果用Window("")来写应该是可以识别到,但就不能用navigate方法了

joykao 发表于 2012-7-12 14:04:46

hwnd = Extern.GetForegroundWindow()这方法不好,试试下面这个:
HWND = Browser("name:=Google").GetROProperty("hwnd")这是同一浏览器不同TAB打开Google 和百度的,然后获得Google 页面的句柄然后只关掉Google 那个页面。。。

AntonioNikki 发表于 2012-7-13 09:21:24

回复 3# joykao


    你的方法我知道。。 只是上面的是我从书里抄来的 不知道为什么不好用。 就是精通qtp-自动化测试技术领航。 不过仍然非常感谢

joykao 发表于 2012-7-14 21:38:17

回复 4# AntonioNikki
直接去问QTP 论坛斑竹吧,书是他写的。。得问他;P;P

紫藤萝mary 发表于 2012-8-14 11:13:12

楼主,问题解决了么?我也遇到了相同的问题,纠结死了。

紫藤萝mary 发表于 2012-8-14 11:13:35

楼主,问题解决了么?我也遇到了相同的问题,纠结死了。

shingo0109 发表于 2012-8-14 11:19:51

偶也用hwnd = Extern.GetForegroundWindow()来获取hwnd试试, 发现和打开的Browser里的hwnd不一样, 求解~~~

紫藤萝mary 发表于 2012-8-14 14:55:25

持续关注中,求高手解答。
页: [1]
查看完整版本: 关于qtp句柄调用的问题