MSAA COM-based?

I am wondering if MSAA is COM-based, then you have to use CreateObject ("Accessibility") to instantiate and call its methods. I have had no success with this. I have "OLEACC.DLL" in SYSTEM32 and it is registered on Windows. But CreateObject doesn't work.

Any thoughts?

I would like to use functions such as AccessibleObjectFromPoint () to get the IAccessible object of the control at a given point.

Has anyone had this experience?

Any input is greatly appreciated,

Thank,

Camille

+1


source to share


1 answer


MSAA is COM based. However, there is no co-created class, it only exposes interfaces. This is the reason why you cannot do CreateObject()

.



APIs supported by MSAA like AccessibleObjectFromPoint

and AccessibleObjectFromWindow

are dll exported C ++ methods. You can use them from C ++ by linking the appropriate lib or making LoadLibrary/GetProcAddress

with the function name. With C #, you can get the P / nvoke declaration for these from Pinvoke.net . For example, here's DllImport for AccessibleObjectFromWindow

.

+2


source







All Articles