Automation (formerly called OLE Automation) enables software packages to expose their unique features to scripting tools and other applications.

Automation uses the Component Object Model (COM), but may be implemented independently from other OLE features, such as in-place activation.

While Automation runs on several platforms, the focus of this content is on applications that run on the Microsoft Windows operating system.

To get the most out of this content, you should be familiar with:

  • The Microsoft Windows programming environment.

  • The OLE protocols that are implemented through dynamic-link libraries (DLL) and used in conjunction with other Windows-based programs.

  • The Component Object Model (COM).

In this section


Overview of Automation

Automation enables software packages to expose their unique features to scripting tools and other applications.

Exposing ActiveX Objects

Exposing objects makes them available for programmatic use by other applications and programming tools.

Accessing ActiveX Objects

To access exposed objects, you can create ActiveX clients using Visual Basic, Microsoft Visual C++, Microsoft Excel, and other applications and programming languages that support the Automation technology.

Implementing the IDispatch Interface

ActiveX or OLE objects can implement the IDispatch interface for access by ActiveX clients, such as Visual Basic.

Standard Objects and Naming Guidelines

This section describes the standard ActiveX objects, and discusses naming guidelines for creating objects that are unique to applications, especially user-interactive applications that support a multiple-document interface (MDI).

Type Libraries and the Object Description Language

Type libraries enable others to use ActiveX objects you have created.

User-Defined Data Types

User-defined data types (UDT) are groups of related data items declared as one type of information.


Contains the reference content for Automation.


Additional technical details related to Automation.


Related topics

Component Object Model (COM)