Free tool that logs all window controls hierarchy?

Jan 13, 2014 at 1:33am
Hi
I am looking for an utility application that implements a kind of MSVStudio Spy.
An application that is able to log **all** controls and related details of an windows application window. Spy only sees the main controls and could not detect controls from other programming languages like delphi. It does not detects those controls that are inside other controls.
Do you know an application that could do this?

I need that application n order to inspect the target app in order to automize it later...

Thanks

Alex
Last edited on Jan 13, 2014 at 1:46am
Jan 13, 2014 at 3:54pm
Have you checked www.Nirsoft.net yet? It has a bunch of utilities like what you are describing.
Jan 13, 2014 at 4:34pm
Not yet. I will check it up. Thanks
Jan 14, 2014 at 9:44am
None found... :-(
Jan 14, 2014 at 1:03pm
This isn't always possible due to the structures of some programs, they may keep button and other informations in private structures instead of letting Windows know about them.

Think of a videogame's gui:
Windows doesn't really know if something is a button - It just displays it.

But, in case it still uses regular windows controls, I never found anything better than MSVS's Spy.
Not much from me, eh.
Jan 15, 2014 at 12:34am
I eard about IAccessible COM Interface... But it is Very confusing
There e must be a way brecause screen readers do that
Last edited on Jan 15, 2014 at 12:37am
Jan 15, 2014 at 9:40pm
What did you read about IAccessible that would lead you to believe that it would be a solution to your problem? I'm not familiar with this particular interface but I am experienced enough with COM to help clarify some of the confusion you are having with the subject.
Jan 15, 2014 at 9:59pm
Well, I know that we can get an accessible object pointer to specific window application using:
HRESULT hr = AccessibleObjectFromWindow((HWND) GetHWND(),…
pi_acc_root_win)

Then we can get the name of the window using:
hr = pi_acc_root_win->get_accName(g_var_self, &str_name);

Then we can get all childs levels using the same way but using a IDISPATCH interface type and then get the text of each child object, etc.
It is this last operation that I don’t know how to do that…
Jan 18, 2014 at 2:12am
Ranorex!!
Topic archived. No new replies allowed.