繁体   English   中英

从UI Automation COM API检索模式

[英]Retrieve Patterns from UI Automation COM API

我已经开发了使用UI自动化托管库的应用程序。 性能非常慢,所以我改用UI自动化COM API和包装器: http : //uiacomwrapper.codeplex.com/

我遇到了一个曾经用于返回ValuePattern的AutomationElement的问题,而不再这样做。 当我使用UISpy时,我发现它也确实找到了ValuePattern。 包装器API是否有问题? 有什么我可以做的才能使用COM API使其正常工作。 (我真的不想回到使用托管库的过程)

谢谢

使用当前版本的inspect32.exe可以看到值模式吗? 检查来自Windows SDK,并根据模式显示MSAA或UIA元素。 它是不受管的,因此将显示与使用COM一致的视图,而UISpy是受管的。 据我所知,托管版本和非托管版本之间存在一些差异。 您是否知道遇到此问题的是哪种类型的UI(例如,winforms按钮,通用控件listview等)?

我的猜测是,UltraGrid可能具有MSAA / IAccessible实现。 UIA尝试将其转换为适当的UIA模式-但是UIA在其托管版本和非托管版本中对此的支持略有不同-值得注意的是,托管版本相当慢! 无论如何,UIA的非托管版本都允许您通过该LegacyIAccessiblePattern深入到基础MSAA实现,以便从那里获取值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM