HrDecomposeEID

The HrDecomposeEID function separates the compound entry identifier of an object, usually a message in a message store, into the entry identifier of that object within the store and the store's entry identifier.

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

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 containing 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 containing 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.

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.

See Also

Entry Identifier Functions