The CreateObject function is provided to create a new instance of an externally creatable object from an ActiveX code component and return a reference to that object. When I refer to an object as externally creatable, I mean that it is a top-level object exposed by a component in such a way that the client can create them directly, as opposed to a dependent object, which is created by the component itself and passed back to the client through property references or method calls.