Internet-Aware Objects

There are certain categories identified to cover the persistency interfaces, these have been identified as a result of defining how controls function across the internet. A container that does not support the full range of persistency interfaces should ensure that it does not host a control that requires a combination of interfaces that it does not support. Details of the features required for internet aware controls are available in the ActiveX SDK.

The following tables describe the meaning for various categories as both implemented and required categories.

Required Categories Description
CATID_PersistsToMoniker, CATID_PersistsToStreamInit, CATID_PersisitsToStream, CATID_PersistsToStorage, CATID_PersistsToMemory, CATID_PersistsToFile, CATID_PersistsToPropertyBag Each of these categories are mutually exclusive and are only used when an object supports only one persistence mechanism at all (hence the mutual exclusion). Containers that do not support the persistence mechanism described by one of these categories should prevent themselves from creating any objects of classes so marked.
CATID_RequiresDataPathHost The object requires the ability to save data to one or more paths and requires container involvement, therefore requiring container support for IBindHost.

Implemented Categories Description
CATID_PersistsToMoniker, CATID_PersistsToStreamInit, CATID_PersistsToStream, CATID_PersistsToStorage, CATID_PersistsToMemory, CATID_PersistsToFile, CATID_PersistsToPropertyBag Object supports the corresponding IPersist* mechanism for the category.

The following table provides the exact CATIDs assigned to each category:

Category CATID
CATID_RequiresDataPathHost 0de86a50-2baa-11cf-a229-00aa003d7352
CATID_PersistsToMoniker 0de86a51-2baa-11cf-a229-00aa003d7352
CATID_PersistsToStorage 0de86a52-2baa-11cf-a229-00aa003d7352
CATID_PersistsToStreamInit 0de86a53-2baa-11cf-a229-00aa003d7352
CATID_PersistsToStream 0de86a54-2baa-11cf-a229-00aa003d7352
CATID_PersistsToMemory 0de86a55-2baa-11cf-a229-00aa003d7352
CATID_PersistsToFile 0de86a56-2baa-11cf-a229-00aa003d7352
CATID_PersistsToPropertyBag 0de86a57-2baa-11cf-a229-00aa003d7352