UISpy.exe和Inspect.exe有什么区别? (来自Microsoft Windows SDK) [英] What's the difference of UISpy.exe and Inspect.exe? (From Microsoft Windows SDK)

查看:1704
本文介绍了UISpy.exe和Inspect.exe有什么区别? (来自Microsoft Windows SDK)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我真的很想知道Inspect.exe如何获取UI元素,因为它获取的元素远比UISpy(Microsoft Windows SDK 7中都提供)更多.

I really want to know, how Inspect.exe gets it's UI-Elements, because it gets by far more elements than UISpy (Both available in Microsoft Windows SDK 7).

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

1) I think UISpy gets it's elements with UIAutomation library, right? (Tried it with UIAutomation and got exactly the same elements, that UISpy displayed).

2)Inspect.exe使用哪个库? 因为它显示了例如带有MacromediaFlashPlayerActiveX的应用程序的某些UI元素,我需要将其放入自己的UI-Automation-Application中,所以希望有人对此有所了解.

2) Which library does Inspect.exe use? Because it shows some UI-Elements of a Application with MacromediaFlashPlayerActiveX for example, which I need to get in my own UI-Automation-Application, hope somebody knows something about it.

检查还具有"UI自动化"模式,它也使用UIAutomation库吗?奇怪的是,在Inspect中,它还显示了比UISpy更多的元素.

Inspect also have a "UI Automation" Mode, does it also use UIAutomation library? The strange thing about it is, that in Inspect it also shows many more elements than UISpy.

推荐答案

UISpy是使用.NET的UIAutomation程序集的 .NET 程序.这些程序集是在.NET Framework 2中引入的.

UISpy is a .NET program that uses .NET's UIAutomation assemblies. These assemblies were introduced with .NET Framework 2.

Inspect是使用UIAutomationCore.dll(在System目录中可用)的 native 程序. UIAutomationCore是实现 UI自动化中的新增功能?

Inspect is a native program that uses UIAutomationCore.dll (available in the System directory). UIAutomationCore is a native COM Windows DLL that implements the UI Automation Windows API. This API has been upgraded with Windows, for example here is a link to Windows 8+ improvements: What's New in UI Automation?

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

.NET's UIAutomation assemblies use UIAutomationCore.dll internally. However, Microsoft never upgraded them to new features of the native UI Automation API. A lot of properties (for example all ARIA properties which are very useful), patterns, events, etc, are therefore missing if you use the original .NET's UIAutomation.

但是,.NET世界仍然充满希望,因为这里有一个项目: https://uiacomwrapper. codeplex.com/是.NET UIAutomation的与源兼容的较新版本(实际上是由Microsoft编写的,我不明白为什么他们不以更正式的方式发布并升级.NET的UIAutomation ...).它定义了Windows 8的大多数新属性,模式和界面.

But, there is still hope in the .NET world, because there is a project here: https://uiacomwrapper.codeplex.com/ that is a source-compatible newer version of .NET UIAutomation (It's been in fact written by a Microsoft guy, I don't understand why they don't publish this in a more official way and upgrade .NET's UIAutomation...). It defines most new Windows 8 properties, patterns and interfaces.

这篇关于UISpy.exe和Inspect.exe有什么区别? (来自Microsoft Windows SDK)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆