A lesser-known, new feature in VB6 is the ability to have MultiUse and GlobalMultiUse classes within an ActiveX control project. This is useful if you have ActiveX controls and creatable classes you want to expose from the same project. There was no way to do this in VB5. In VB6, it’s as easy as adding a class module to your ActiveX control project. Unfortunately, there’s no way to do the converse; you can’t have a public user control in an ActiveX DLL project. So, if you want creatable classes and public user controls in the same project, you have to make it an ActiveX Control project. If you prefer your component to be a DLL instead of an OCX, just rename the file; internally, an OCX is the same as a DLL.