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

编程入门 行业动态 更新时间:2024-10-21 19:45:28
本文介绍了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是实现native COM Windows DLL. > UI自动化Windows API .此API已随Windows升级,例如,这里是Windows 8+改进的链接: 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世界仍然充满希望,因为这里有一个项目: uiacomwrapper. codeplex/是.NET UIAutomation的与源兼容的较新版本(实际上是由Microsoft编写的,我不明白为什么他们不以更正式的方式发布并升级.NET的UIAutomation ...).它定义了Windows 8的大多数新属性,模式和界面.

But, there is still hope in the .NET world, because there is a project here: uiacomwrapper.codeplex/ 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)

本文发布于:2023-11-05 08:19:27,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1560342.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:有什么区别   Inspect   exe   UISpy   Windows

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!