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.

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 is mutually exclusive and 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

Component Categories