Difference between UIaComWrapper and UIAutomationCLient + UIAutomationType

I am writing automation scripts using codedui.

Which dll should I Use?



UIAutomationCLient + UIAutomationType

Problem I am facing is:

AutomatinElement.GetClickablepoint () will return drawing.point if UIAComWrapper is used. It will return Windows.Point if UIAutomationCLient + UIAutomationType dlls are referenced.

Can any one guide me, which one shall I use for my codedUI scripts?




More or less they both are same and they use same namespace and same name classes too, the points where they do differ are;

<ol> <li>

UIACOMWrapper.dll uses <strong>UnManaged API</strong> that could be one of the reasons that it is way too much fast than UIAutomationClient.dll Moreover, it is open source so there are many time to time enhancements to make it perform bit more effieceint.

</li> <li>

UIAutomationClient.dll is an outdated assembly based upon <strong>Managed API</strong>, it is slower than UIACOMWrapper, new versions of VS has no support of it.

</li> </ol>

If you want to analyze the behavior of UIACOMWrapper then use UIA Verify tool, use UIA Spy for UIAutoamtionClient.

Hope this will help, Cheers!


It is depending on which version of visual studio your using to develop tests. UIAComwrapper is used for VS2013 and above. Microsoft was updated syntax of AutomatinElement.GetClickablepoint () in UIAComwrapper There some more in UIAComwrapper.

Regards, Rajendar


  • Calculate (sum,max,avg) comma separated column in mysql
  • Coded UI: App gets closed after each test even with CloseOnPlaybackCleanup set to false
  • MyTestInitialize() and MyTestCleanup()
  • Can someone compile PHP runkit DLL extension for me?
  • Possible to Compile ASP.NET to Machine Code?
  • Mapping Geometry from SQLServer2008 to .NET (NHibernate
  • failed: dlopen failed: cannot locate symbol “signal” referenced by “libSDL2.so”
  • Compile Lua from source and create C module with it
  • Weird linker problem with static const class members
  • %load_ext rpy2.ipython Image not found error
  • Qt5 Deployment on Windows
  • Variable scope in Python nested function [duplicate]
  • Removing Parent in AS3: Does this free the memory used by all the children?
  • Unresolved external symbol (OpenGL and c++)
  • How can I fix g++ Undefined symbols for architecture x86_64 error?
  • Elastic Beanstalk failed to update local Git configuration - Windows
  • Accessing variables in other classes (Java)
  • pandas mix position and label indexing without chaining
  • .NET compiled third-party DLL reference conflict
  • Android Studio: Link of external JAR in a multi modules project
  • Writing an RDA to CSV in R
  • cast stl::vector containing pointers to stl::vector containing constant pointers
  • How to solve “The hierarchy of the type is inconsistent” error in Java Eclipse?
  • How do I know what reference to include to import a specific .NET namespace?
  • Google Player Game Service Error: Can't build the sample game
  • How to add System.Windows dll to Visual Studio 2010 express?
  • C++ Coin flip program error
  • string.IsNullOrEmpty() Doesn't Seem to Work on a String within a Class within a Class
  • iOS Cordova first plugin - plugin.xml to inject a feature
  • C#: Import/Export Settings into/from a File
  • WPF Template Binding in ToggleButton UserControl
  • Why use database factory in asp.net mvc?
  • Can someone please explain to me in the most layman terms how to use EventArgs?
  • How to revert to previous XCode version?
  • If I include Java 8 in my Android app does that affect which devices it will work on?
  • Statically linking a C++ library to a C# process using CLI or any other way
  • Confusion with PayPal's monthly billing cycle
  • python regex in pyparsing
  • Error creating VM instance in Google Compute Engine
  • Checking variable from a different class in C#