Я хочу построить дерево элементов интерфейса, которые присутствуют в приложении. Я пытаюсь использовать Microsoft UI Automation. Я могу получить доступ к рабочему столу, обратившись к AutomationElement.RootElement, но я не уверен, как получить доступ к приложению, запущенному на рабочем столе.Как пройти все дочерние элементы программы
Основная цель - создать дерево пользовательского интерфейса целевого приложения, уже запущенного на рабочем столе. У меня нет доступа к коду целевого приложения.
Когда я пытаюсь запустить
foreach (var item in AutomationElement.RootElement.CachedChildren)
{
Console.WriteLine(item.ToString());
}
Это дает мне Фатальная ошибка: Не удается получить свойство или элемент, который не кэшируются.
Пожалуйста, предложите, что это лучший способ решить эту проблему.
Вы должны прочитать документацию, прежде чем задавать такой основной вопрос! https://msdn.microsoft.com/en-us/library/ms750727%28v=vs.110%29.aspx – Elmue