How to: Expose ActiveX Objects
To expose ActiveX objects, you write code to initialize the objects, implement the objects, and then release OLE when the application terminates.
To initialize exposed objects
-
Initialize OLE.
-
Register the class factories of the exposed objects.
-
Register the active object.
To implement exposed objects
-
Implement the IUnknown, IDispatch, and virtual function table (VTBL) interfaces for the objects.
-
Implement the properties and methods of the objects.
To release OLE when the application terminates
-
Revoke the registration of the class factories and revoke the active object.
-
Uninitialize OLE.
To retrieve active objects for use by others
-
Use the Object Description Language (ODL) to create an .odl file, or use the Interface Definition Language (IDL) to create a library section in an .idl file that describes the properties and methods of the exposed objects. Use the Microsoft Interface Definition Language (MIDL) compiler to compile both the .idl file and .odl file.
-
Create a registration (.reg) file for the application.
In this section
| Topic | Description |
|---|---|
|
To initialize OLE and exposed objects, use OleInitialize, CoRegisterClassObject, and RegisterActiveObject. | |
|
To expose ActiveX objects, you must implement certain interfaces. | |
|
This topics describes what you must do to expose objects for Automation. | |
|
The Application object identifies the application and provides a way for ActiveX clients to bind to and navigate the application's exposed objects. All other exposed objects are subordinate to the Application object; it is the root-level object in the object hierarchy. | |
|
Before an application can use OLE and Automation, the OLE objects must be registered with the user's system registration database. | |
|
To release OLE and the exposed objects, use the RevokeActiveObject, CoRevokeClassObject, and OLEUninitialize functions. | |
|
Automation provides several functions to identify and retrieve the active instance of an object or application, so you can make the object available to others. | |
|
To return an object from a property or method, the application should return a pointer to the object's implementation of the IDispatch interface. | |
|
Describes how to shut down an ActiveX object. |