HrValidateIPMSubtree
The HrValidateIPMSubtree
function adds one or more standard interpersonal message (IPM) folders to a
message store.
Note This function
may not be supported in future versions of MAPI.
Quick Info
|
Header
file: |
MAPIUTIL.H |
|
Implemented
by: |
MAPI |
|
Called by: |
Client
applications |
HrValidateIPMSubtree(
|
LPMDB lpMDB, |
|
|
ULONG ulFlags,
|
|
|
ULONG FAR * lpcValues,
|
|
|
LPSPropValue FAR * lppProps,
|
|
|
LPMAPIERROR FAR * lppMapiError |
|
|
); |
|
Parameters
lpMDB
[in] Pointer
to the message store object to which to add the folder or folders.
ulFlags
[in] Bitmask
of flags used to control how the folders are created. The following flags can
be set:
MAPI_FORCE_CREATE
The folder or
folders created be verified before creation, even if message store properties
indicate that they are valid. A client application or service provider
typically sets this flag when an error indicates that the structure of the
created folder has been damaged.
MAPI_FULL_IPM_TREE
The following
folders should be created in addition to the two folders that are always
created: a folder titled Folder and a folder titled Common Views, and under the
IPM-subtree root folder the Inbox, Outbox and Sent Items folders. The
MAPI_FULL_IPM_TREE flag is typically set when the message store in which the
folders are created is the default store.
lpcValues
[out] Pointer
to the number of values in the SPropValue array in the lppProps parameter is
stored. The value of the lpcValues parameter can be zero if lppProps
is NULL.
lppProps
[out] Pointer
to a pointer to an array of SPropValue structures indicating values for
PR_VALID_FOLDER_MASK and related properties is stored. The IPM Inbox s entry identifier is included as part of this SPropValue
array; this entry identifier has a special property tag coded as PROP_TAG(PT_BINARY, PROP_ID_NULL). The lppProps parameter can be NULL,
indicating that the calling implementation does not require that a SPropValue
array be returned.
lppMapiError
[out] Pointer
to the pointer to the returned MAPIERROR structure containing version, component, and
context information for an error. The lppMAPIError parameter can be set
to NULL if there is no MAPIERROR structure to return.
Remarks
MAPI uses the
HrValidateIPMSubtree function internally to construct the standard IPM
folder tree in a message store when the store is first opened, or when a store
is made the default store. This function can also be used by client
applications to validate or repair standard message folders.
HrValidateIPMSubtree always creates a root folder in the IPM subtree, the
Deleted Items folder in the root directory of the IPM subtree, and a finder
folder in the message store root directory.
HrValidateIPMSubtree sets the PR_VALID_FOLDER_MASK property to indicate whether
each IPM folder it creates has a valid entry identifier. The following entry
identifier properties of the message store are set to the entry identifiers of
the corresponding folders and returned in the lppProps parameter along
with PR_VALID_FOLDER_MASK:
PR_COMMON_VIEWS_ENTRYID
PR_FINDER_ENTRYID
PR_IPM_OUTBOX_ENTRYID
PR_IPM_SENTMAIL_ENTRYID
PR_IPM_SUBTREE_ENTRYID
PR_IPM_WASTEBASKET_ENTRYID
PR_VIEWS_ENTRYID
PROP_TAG macro
(PT_BINARY, PROP_ID_NULL, a placeholder tag for the IPM Inbox).
See Also
IMAPISession::OpenMsgStore