This article was previously published under Q152023
This article has been archived. It is offered "as is" and will no longer be updated.
Automation allows a client application to call methods or properties ofa server application. This article provides pointers to resources forstudying Automation using the Windows Software Developer Kit (SDK).
The following books provide a good introduction to implementing OLEautomation using the Windows SDK:
Inside COM by Dale Rogerson. A good, practical guide for all COM users. Microsoft Press. ISBN# 1-57231-349-8.
Give particular attention to Chapter 11: "Dispatch Interfaces and Automation."
Inside Visual C++ by David J. Kruglinski. This fourth edition is a good overall explanation of the capabilities of Visual C++. Microsoft Press. ISBN# 1-57231-565-2.
Read Chapter 24: "Automation."
OLE Automation Programmer's Reference - Creating Programmable 32-bit applications. Microsoft Press. ISBN 1-55615-851-3.
Read the following chapters for an introduction of automation servers and clients:
Chapter 1: "Overview of OLE Automation." Chapter 2: "Exposing OLE Automation Objects." Chapter 3: "Accessing OLE Automation Objects."
This book references the HELLO, LINES, BROWSE, and BROWSEH samples that ship with the Win32 SDK and the 32-bit Visual C++ compiler.
Inside OLE - second edition by Kraig Brockschmidt. Microsoft Press. ISBN 1-55615-843-2.
The following chapters provide information about OLE automation:
Samples available from the Microsoft Download Center are indicated by theQ number and the Title of the article pointing to the sample. All othersamples can be obtained from the Win32 SDK and the 32-bit Visual C++compiler. All samples are 32-bit unless otherwise indicated.
HELLO - Simple EXE-based automation server. This is a good sample to use to learn how to create your first automation server.
LINES - A more complex EXE-based automation server that also implements collections.
BROWSEH - An inproc (DLL-based) automation server.
SIMPAUTO - A simple EXE-based, 16-bit automation server. (See the Microsoft Knowledge Base article:
107981 SAMPLE: Simple OLE Automation Object Sample)
AUTODLL - A simple inproc (DLL-based), 16-bit automation server. See the Microsoft Knowledge Base article:
DISPCALC, DISPCALC2, SPOLY, and SPOLY2 are other servers that ship with the Win32 SDK. These are older samples and should be looked at only after you have seen the others previously mentioned in this section.
HELLCTRL - Client that controls the server using vtbl-binding.
BROWSE - Client that controls server using late-binding. The invhelp.cpp and invhelp.h files contain helper functions that make it easy to write clients for any server.
DISPDEMO - Client that controls server using late-binding.
AUTOCTRL - 16-bit automation client that uses late-binding. See the Microsoft Knowledge Base article:
Microsoft Windows 98 Standard Edition, Microsoft Windows 95, Microsoft Windows NT Server 3.5, Microsoft Windows NT Server 3.51, Microsoft Windows NT Server 4.0 Standard Edition, Microsoft Windows NT 4.0 Service Pack 4, Microsoft Windows NT Workstation 3.5, Microsoft Windows NT Workstation 3.51, Microsoft Windows NT Workstation 4.0 Developer Edition, Microsoft Windows NT Workstation 4.0 Developer Edition