I am trying to to interact with a third party application. I want to save text values displayed by the client for auditing purposes.

There were many missing elements when using UISpy.exe, and a complete list when using Inspect.exe. This lead me to believe that in order to interact with this application, I must use the UIAComWrapper.dll.

This is the inspect.exe results, which have complete information exacatly as I would like to store it.

inspect.exe with all children:

inspect.exe with all children

When I run the following code, it returns all elements except the one redacted element.

Dim rootChildren = AutomationElement.RootElement.FindAll(TreeScope.Children, Condition.TrueCondition)

What can I do to get a complete list of the root element's children?

When I use the standard UIAutomationClient.dll (no com wrapper), i get the complete list of children for rootElement including the redacted element. However, that element has no children expect the titlebar.

I want to retrieve precisely what is displayed by inspect.exe for this element, then store the tree.

1

There are 1 best solutions below

0
On

The third party application was being run as admin but visual studio was not. When VS was opened and run as admin, the rootElement.children list matched inspect.exe.