最新评论

共4页: 1 2 3 4 下一页 
JulioZou 2011-12-28 23:38
安全不?无毒吧??\(^o^)/~支持
小处处 2011-12-28 09:01
不错,但是我的塞班系统,好像用不了。。。
guidee 2011-11-16 21:42
你好, 看了你关于UIAutomation系列的文章,受益颇多。 我在实践中遇到了两个问题,一直没有找到解决的方法,希望你能指导一下。 1:我希望获得一个element 的所有children, 但是FindAll()方法 有个一个Condition 参数,我该怎样设置这个参数才能使 FindAll()返回所有的children. public AutomationElementCollection FindAll( TreeScope scope, Condition condition ) 2:通常我们用UISPY 或者 SPY++ 抓取某个element,可以查看到它的各项属性。 但是我实践中发现,有些element 是抓取不到的,那我们的代码应该怎样获得这些element. e.g. 在win 2008 server,打开server manager->Features->Remove Features, 弹出 Remove Features wizard窗口,这个窗口里有一个Tree, UISPY只能抓取到包含这个Tree 的pane,我们该如何编程抓取到这个tree。 [img]http://hiphotos.baidu.com/guidee/pic/item/155188196a659c3242a9ad79.jpg[/img] [img]http://hiphotos.baidu.com/guidee/pic/item/1542c91f74c14014f724e420.jpg[/img]
Gil 2010-11-10 15:29
对于带层次关系的控件树,假若A有子控件B,B有子控件C,那么用A.FindChild()或者A.FindAll()都是无法找到控件C的吧?
Gil 2010-11-10 15:16
你好,请教个问题。 我发现你代码中的aeForm赋值了两次,两次赋值期间没有对该实例作任何的改变和调用,于是乎,我把 AutomationElement aeForm = AutomationElement.FromHandle(p.MainWindowHandle); 改成 AutomationElement aeForm; 如我所料,程序的编译和执行都跟没改代码前丝毫不差。那么,AutomationElement.FromHandle(p.MainWindowHandle)意欲何为?
开着拖拉机 2010-07-16 15:48
@崔佃鹏 哈哈,这个当时做的也不是很深刻啊
崔佃鹏 2010-07-15 17:28
哥,你小气的快不行了,!!!!
开着拖拉机 2010-03-09 00:22
@行走天涯 我水平不高,见笑啦
行走天涯 2010-03-08 16:28
一篇文章就这么点, 一句话形容:太小气
开着拖拉机 2010-01-15 21:09
@nemo2389 可以,不过至少要知道某一个属性,例如HelpText,AutomationId等
nemo2389 2010-01-15 15:59
你好,我想请教一个问题,能不能在不知道控件的name属性下测试?
开着拖拉机 2009-12-28 21:18
@ffei 谢谢你的建议,我看了你提供链接的文章,感觉真的不错。
ffei 2009-12-28 13:50
一口气把楼主的UI Automation系列看完了,不过vsts2010好像已经把这些全部封装好了,并且对于web的支持比windows app更好。 提高非常简单的api来找到控件,楼主有兴趣可以参考一下: 在vsts2010中,提供一种codeduitest类型,基本可以参照unit模式来开发ui方面的测试代码 http://blogs.msdn.com/mathew_aniyan/archive/2009/02/12/hand-coding-a-coded-ui-test.aspx
mianxiang 2009-12-28 12:33
Hi Kangyi, 很高兴能看到你的文章,谢谢你的分享:) 我现在碰到了一个问题,不知道如何解决:我用UISpy查看一个窗口时,它显示是支持WindowPattern 和 TransformPattern的,但是当我找到这个窗口的AuotmationElement之后,调用TryGetCurrentPattern去获得WindowPattern和TransformPattern时,总会出现异常。不知道这个是啥原因引起的?有没有什么解决的办法? 谢谢。
yufun 2009-12-22 11:49
@包建强 UI Automation中的Name属性名字起的不好,貌似我在哪个博客看到有批评这个名字的,UI Automation中的Name叫Text更好一点。起这个名字估计是为了和AccessibleName保持统一吧,如果你的控件设置了AccessibleName,这个Name就会拿AccessibleName作为值,如果没有设置,会拿Window Text作为值 而AutomationID针对不同类型的控件是不一样的,比如WinForm和Win32,一般是用变量名作为AutomationID的,对于WPF,是可以通过AutomationProperties.AutomationId来设置的,如果没有设置,变量名将会作为AutomationID
yufun 2009-12-22 11:42
@1111111111111111 VS2010中是对UIAutomation的一个封装,跟White差不多 而且貌似封装的不怎么好使,反正我们是自己来封装UIAutomation来做
开着拖拉机 2009-12-13 23:29
@donjuan 你好,谢谢你回答我的问题,此问题的确是UI Automation返回的错误,我操作的窗体中有infragistics的datagrid控件,找前几行没有问题,但是在找第四行的时候就会抛出此异常,我调用了GC.Collect();后此问题出现的频率就没有以前那么高了。谢谢
donjuan 2009-12-13 21:33
我想Microshaoft的意思应该是 var ptr = IntPtr.Zero; try { ptr = ... } finally { Marshal.ReleaseCom(ptr); } ComException不是由于垃圾回收或者内存的问题,ComException实际上是针对几乎所有的COM错误码的一个封装,你这个问题,应该是UI Automation返回了错误: // The window style or class attribute is invalid for this operation. ERROR_INVALID_WINDOW_STYLE 至于为什么UI Automation会返回这个错误,应该要看它正在尝试的窗体是什么,这个需要具体问题具体分析,呃……最后一句好像是废话。
开着拖拉机 2009-12-13 11:27
@Microshaoft 能说的详细一点吗?
Microshaoft 2009-12-13 11:16
实现dispose时P/Invoke API: ReleaseCom
共4页: 1 2 3 4 下一页