An interface implementation provides the services promised by the interface. An implementation does this in the standard C++ way by deriving from the base class, in this case, the interface definition, and implementing its functions.
One or more interface implementations are gathered together in a DLL, termed an interface implementation collection. A collection can have implementations of more than one interface. Aside from the implementations themselves, each collection has two key features that allow ECom to use it:
it exports an array of factory functions that allow implementations to be created
it publishes a registration resource file that lists its implementations and their properties