Basic Approach for the Adapter

The Adapter should have the same classes as the System.Windows.Automation (SWA) namespace documented in the UI Automation open specification, but the implementation is different. Generally, each SWA class is wrapping a COM interface. For instance, AutomationElement is wrapping IUIAutomationElement, CacheRequest is wrapping IUIAutomationCacheRequest, and so forth. Most methods wrap in a straightforward way -- the adapter code is simply converting classes and data structures back and forth between .NET and COM.

When there are problems, it is important to determine at which layer the problem is occurring:
  • It might be an issue in the adapter itself, such as a problem in the data type conversions.
  • It might be an issue in the Windows Automation API 3.0 COM implementation, which we might be able to work around.
  • Or it might be a genuine behavior difference between the managed API and the COM API for UI Automation. We might also be able to work around these, depending on what they are.

Last edited Jan 2, 2010 at 1:39 PM by MSBernstein, version 1

Comments

No comments yet.