JonnyGu 发表于 2013-2-1 10:12:09

如何不根据高和宽来定位windows程序的对象

直接抓取的属性通常是regexpwndclass和windows id,windows id 是变化的,所以去掉,加上了高度,可以识别,问题是换了机器,分辨率换了,对象不能识别了,可是如果去掉高度,只用regexpwndclass和Index也很难找到对应的对象,其他属性都好像用不上,怎么办?

黑羽祭 发表于 2013-2-1 10:34:41

回复 1# JonnyGu



为什么不用如Text、title之类的?

JonnyGu 发表于 2013-2-1 10:56:13

回复 2# 黑羽祭


   没有这样的属性,特别是winobject,几乎没有可用的属性。

JonnyGu 发表于 2013-2-1 10:57:50

回复 2# 黑羽祭


    text是有,都是空的。

JonnyGu 发表于 2013-2-1 11:00:14

黑羽祭 发表于 2013-2-1 11:55:47

回复 5# JonnyGu


    你确定window id是变化的?

JonnyGu 发表于 2013-2-1 12:08:57

回复 6# 黑羽祭


    不变就好了,就是在变,重新打开程序之后肯定变的。

黑羽祭 发表于 2013-2-1 12:26:08

回复 7# JonnyGu


    你试过了?
我建议你先用window id试试看

power911 发表于 2013-2-1 14:11:09

开发语言是什么?看下有没有隐藏属性

JonnyGu 发表于 2013-2-1 15:25:31

回复 9# power911


    开发语言是java,曾经用过java add-in,但是反而识别更加混乱,所以还是用的标准的来识别,隐藏属性一般是什么呢,主要就是winobject,其他类型都可以用index搞定。

ls_721521 发表于 2013-2-7 15:06:08

win对象建议用autoit3,网上搜一下,autoit3注册后qtp可以调用他的方法。
autoit3对win对象支持比qtp好一些
页: [1]
查看完整版本: 如何不根据高和宽来定位windows程序的对象