.net – UISpy.exe和Inspect.exe有什么区别? (来自Microsoft Windows SDK)

前端之家收集整理的这篇文章主要介绍了.net – UISpy.exe和Inspect.exe有什么区别? (来自Microsoft Windows SDK)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我真的想知道,Inspect.exe如何获取它的UI元素,因为它获得的元素比UISpy多得多(两者都在Microsoft Windows SDK 7中可用)

1)我认为UISpy通过UIAutomation库获取它的元素,对吧?
(尝试使用UIAutomation并获得完全相同的元素,显示UISpy)

2)Inspect.exe使用哪个库?
因为它显示了一些带有MacromediaFlashPlayerActiveX的应用程序的UI元素,我需要在我自己的UI-Automation-Application中获取,希望有人知道它.

编辑:Inspect也有一个“UI自动化”模式,它是否也使用UIAutomation库?关于它的奇怪之处在于,在Inspect中它还显示了比UISpy更多的元素.

先感谢您

UISpy是一个使用.NET的UIAutomation程序集的.NET程序.这些程序集随.NET Framework 2一起引入.

Inspect是一个使用UIAutomationCore.dll(在系统目录中可用)的本机程序. UIAutomationCore是一个实现UI Automation Windows API的本机COM Windows DLL.此API已经使用Windows升级,例如,这里是Windows 8改进的链接What’s New in UI Automation?

.NET的UIAutomation程序集在内部使用UIAutomationCore.dll.但是,Microsoft从未将它们升级到本机UI Automation API的新功能.因此,如果使用原始.NET的UIAutomation,则会丢失许多属性(例如,所有非常有用的ARIA属性),模式,事件等.

但是,在.NET世界中仍有希望,因为这里有一个项目:https://uiacomwrapper.codeplex.com/是.NET UIAutomation的源兼容新版本(事实上它是由微软人写的,我不明白他们为什么不要以更官方的方式发布它并升级.NET的UIAutomation ……).它定义了大多数新的Windows 8属性,模式和接口.

猜你在找的Windows相关文章