В чем разница UISpy.exe и проверить.exe? (Из Microsoft Windows SDK)

Я действительно хочу знать, как проверить.exe получает это UI-элементы, потому что он получает гораздо больше элементов, чем UISpy (оба доступны в Microsoft Windows SDK 7)

1) я думаю, что UISpy получает его элементы с библиотекой UIAutomation, верно? (Попробовал с UIAutomation и получил точно такие же элементы, что и uispy)

2)какая библиотека проверяет.ехе использовать? Поскольку он показывает некоторые UI-элементы приложения с MacromediaFlashPlayerActiveX, например, которые мне нужно попасть в мое собственное UI-Automation-приложение, надеюсь, кто-то знает что-то об этом.

EDIT: Inspect также имеет режим "автоматизация пользовательского интерфейса", он также использует библиотеку UIAutomation? Странно то, что в Inspect он также показывает гораздо больше элементов, чем UISpy.

спасибо заранее

1 ответов


UISpy Это .NET программа, использующая сборки UIAUTOMATION .NET. Эти сборки были представлены в .NET Framework 2.

Inspect это уроженца программа, которая использует UIAutomationCore.dll (доступно в системном каталоге). UIAutomationCore является уроженца COM Windows DLL, которая реализует автоматизация пользовательского интерфейса Windows API. Этот API был обновлен с Windows, например вот ссылка на Windows 8+ улучшения: что нового в автоматизации пользовательского интерфейса?

сборки UIAUTOMATION .NET используют UIAutomationCore.библиотеки DLL внутренне. Однако Microsoft так и не обновила их до новых функций собственного API автоматизации пользовательского интерфейса. Поэтому многие свойства (например, все свойства ARIA, которые очень полезны), шаблоны, события и т. д. отсутствуют, если вы используете исходную UIAutomation .NET.

но в мире .NET все еще есть надежда, потому что здесь есть проект: https://uiacomwrapper.codeplex.com/ это совместимая с исходным кодом более новая версия .NET UIAutomation (на самом деле она была написана парнем Microsoft, я не понимаю, почему они не публикуют это более официальным способом и не обновляют UIAutomation .NET...). Он определяет большинство новых свойств, шаблонов и интерфейсов Windows 8.