Design Considerations for ActiveX Objects
When you expose objects to Automation, you need to decide which interfaces to implement and how to organize your objects. You should also create a type library. This section provides information to guide you in designing an Automation application.
In this section
| Topic | Description |
|---|---|
|
An object's programmable interface comprises the properties, methods, and events that it defines. | |
|
The IUnknown interface defines three member functions that must be implemented for each object that is exposed. | |
|
The IDispatch interface provides a late-bound mechanism to access and retrieve information about an object's methods and properties. | |
|
It is recommended that you implement dual interfaces because of the advantages in doing so. | |
|
Applications that add interfaces need to register the interfaces so OLE can find the appropriate remoting code for interprocess communication. | |
|
CLSIDs are universally unique identifiers (UUIDs, also called globally unique identifiers, or GUIDs) that identify class objects to OLE. | |
|
When handling formatted data, the application should pass an object that implements the OLE IDataObject interface. | |
|
Automation defines the IEnumVARIANT interface to provide a standard way for ActiveX clients to iterate over collection objects. | |
|
The _NewEnum property identifies an object as supporting iteration through the IEnumVARIANT interface. |