HrDecomposeEID

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Separates the compound entry identifier of an object, usually a message in a message store, into the entry identifier of that object in the store and the store's entry identifier.

Header file:

Mapiutil.h

Implemented by:

MAPI

Called by:

Client applications

HrDecomposeEID(
  LPMAPISESSION psession,
  ULONG cbEID,
  LPENTRYID pEID,
  ULONG FAR * pcbStoreEID,
  LPENTRYID FAR * ppStoreEID,
  ULONG FAR * pcbMsgEID,
  LPENTRYID FAR * ppMsgEID
);

Parameters

  • psession
    [in] Pointer to the session in use by the client application.

  • cbEID
    [in] Size, in bytes, of the compound entry identifier to be separated.

  • pEID
    [in] Pointer to the compound entry identifier to be separated.

  • pcbStoreEID
    [out] Pointer to the returned size, in bytes, of the entry identifier of the message store that contains the object. If the pEID parameter points to a noncompound entry identifier, then the pcbStoreEID parameter points to a value of zero.

  • ppStoreEID
    [out] Pointer to a pointer to the returned entry identifier of the message store that contains the object. If the pEID parameter points to a noncompound entry identifier, NULL is returned in the ppStoreEID parameter.

  • pcbMsgEID
    [out] Pointer to the returned size, in bytes, of the entry identifier of the object. If the pEID parameter points to a noncompound entry identifier, then the pcbMsgEID parameter is equal to the value of the cbEID parameter.

  • ppMsgEID
    [out] Pointer to a pointer to the returned entry identifier of the object. If the pEID parameter points to a noncompound entry identifier, ppMsgEID points to a pointer to a copy of the noncompound entry identifier.

Return Value

None.

Remarks

If the identifier specified by the pEID parameter is compound, it is split into the entry identifier of the object within its message store and the store's entry identifier. Noncompound entry identifier strings are simply copied. The compound identifier to be separated is usually one created by the HrComposeEID function.

Notes to Callers

The memory that holds the pEID parameter is released upon successful completion of this function. The calling implementation is responsible for freeing memory for the output parameters.