The goals for Automation and COM are almost identical: define components with well-defined interfaces in a location-transparent and language-independent manner. The main difference between Automation and COM is that Automation is targeted at enabling callers that are high-level scripting tools to manipulate objects, whereas COM is targeted at lower-level languages such as C++ and C. Automation was originally developed to allow Visual Basic to bind to COM components through a special interface. The name "Automation" is something of an anachronism since Automation has grown beyond its original goals of simply allowing scripting languages to automate common tasks. Automation is becoming more important with the growing use of scripting languages in Web browsers, server side scripting, and office suites. |