Designing the Run-Time Object

Next to designing the visual user interface, deciding what form the run-time object should take is perhaps the most important issue in building an ActiveX designer. You have three choices:

The simplest approach is to replicate the design-time object as the run-time object. The advantage is that you have to write less code. You don't need to implement IActiveDesigner and you can use the same implementations of IOleObject, IOleInPlaceObject, and IOleInPlaceActiveObject as in the visual designer.

The disadvantage, however, is that the run-time object may contain type information and code used only at design time, and not needed at run time. The increased size can result in poor performance. In addition, you may need to license the run-time object separately from the visual designer. If so, you have to create a separate object.

Whether the visual designer and run-time objects are the same or different, they can be in the same file (.dll or .ocx) or in different files.