How does an ActiveX DLL/In Process Server differ from an ActiveX OCX?
An ActiveX OCX requires a control container (such as a Visual Basic form) in order to be instantiated – an ActiveX DLL does not. As such, an ActiveX DLL can generally be used in any COM-enabled environment, whether or not it has a form (or any visual interface). An OCX is capable of querying its control container, and can determine if it is being instantiated either at design-time or run-time.