The Windows CE ATL Object Wizard can help you create the following types of components.
Simple objects initially implement only the IUnknown and, optionally, the IDispatch, ISupportErrorInfo, and IConnectionPointContainer interfaces. You can add other interfaces after inserting the simple object into your project, but you must provide the implementation for those methods yourself.
Internet Explorer objects implement all the interfaces implemented by simple objects. They also implement the IObjectWithSite interface, which is required for objects used in web pages. These objects are compatible with the Windows CE Pocket Internet Explorer as well as the Internet Explorer for desktop platforms.
Internet Explorer controls implement all the interfaces implemented by Internet Explorer objects. They also implement the IPersistStreamInit, IOleControl, IOleObject, IOleInPlaceActiveObject, and IViewObjectEx interfaces and, optionally, the IOleInPlaceObjectWindowless interface. Controls also inherit from the ATL CComControl class, which provides a number of helper functions that are necessary for controls. These controls are compatible with the Windows CE Pocket Internet Explorer as well as the Internet Explorer for desktop platforms.
Full controls implement all the interfaces implemented by Internet Explorer controls, except for IObjectWithSite. They also implement the IProvideClassInfo2, IPersistStorage, IQuickActivate, IDataObject, and ISpecifyPropertyPages interfaces.
You can also use the Windows CE ATL Object Wizard to create dialog boxes, property pages, and a component registrar for your server. A component registrar is an object that can register and unregister individual components in a DLL.