- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我真的很想知道 Inspect.exe 如何获取它的 UI 元素,因为它获取的元素比 UISpy 多得多(两者都在 Microsoft Windows SDK 7 中可用)。
1) 我认为 UISpy 通过 UIAutomation 库获取它的元素,对吗?(用 UIAutomation 尝试过,得到了与 UISpy 显示的完全相同的元素)。
2) Inspect.exe 使用哪个库?因为它显示了带有 MacromediaFlashPlayerActiveX 的应用程序的一些 UI 元素,我需要将其放入我自己的 UI 自动化应用程序中,希望有人了解一些。
编辑:Inspect 也有“UI 自动化”模式,它是否也使用 UIAutomation 库?奇怪的是,在 Inspect 中它还显示比 UISpy 更多的元素。
最佳答案
UISpy
是一个使用 .NET 的 UIAutomation 程序集的 .NET 程序。这些程序集是随 .NET Framework 2 引入的。
Inspect
是一个使用 UIAutomationCore.dll(位于系统目录中)的 native 程序。 UIAutomationCore 是一个 native COM Windows DLL,它实现 UI Automation Windows API 。此 API 已随 Windows 一起升级,例如,这里是 Windows 8+ 改进的链接:What's New in UI Automation?
.NET 的 UIAutomation 程序集在内部使用 UIAutomationCore.dll。然而,微软从未将它们升级到 native UI 自动化 API 的新功能。如果您使用原始 .NET 的 UIAutomation,许多属性(例如所有非常有用的 ARIA 属性)、模式、事件等都会丢失。
但是,.NET 世界还是有希望的,因为这里有一个项目:https://uiacomwrapper.codeplex.com/这是 .NET UIAutomation 的源代码兼容的新版本(实际上是由 Microsoft 人员编写的,我不明白为什么他们不以更正式的方式发布它并升级 .NET 的 UIAutomation...)。它定义了大多数新的 Windows 8 属性、模式和界面。
关于.net - UISpy.exe 和 Inspect.exe 有什么区别? (来自微软Windows SDK),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40496048/
我真的很想知道 Inspect.exe 如何获取它的 UI 元素,因为它获取的元素比 UISpy 多得多(两者都在 Microsoft Windows SDK 7 中可用)。 1) 我认为 UISpy
我是一名优秀的程序员,十分优秀!