Fugue: Automating an Application

Now that we've thoroughly pureed IDispatch to a smooth consistency with only a simple dispinterface, let's see how to apply what we know to something more complicated and create automation interfaces for an entire application. As an example, we'll automate the version of Cosmo from Chapter 12 (so we don't need to worry about drag and drop). I won't carry these additions forward into later chapters, however, to keep those samples cleaner and to avoid having to continually add new properties and methods to the dispinterfaces as we add new features to Cosmo.

Like most other major features of an application, adding support for OLE Automation involves both design and implementation work. Because this book primarily covers mechanisms and implementation details, it won't provide a detailed account of design. The material presented here is to give you a head start in your own work.