Platform SDK: MAPI

IMAPIFolder::GetMessageStatus

The IMAPIFolder::GetMessageStatus method obtains the status associated with a message in a particular folder — for example, whether that message is marked for deletion.

Quick Info

See IMAPIFolder : IMAPIContainer.

HRESULT GetMessageStatus(
  ULONG cbEntryID,               
  LPENTRYID lpEntryID,           
  ULONG ulFlags,                 
  ULONG FAR * lpulMessageStatus  
);
 

Parameters

cbEntryID
[in] Count of bytes in the entry identifier pointed to by the lpEntryID parameter.
lpEntryID
[in] Pointer to the entry identifier for the message whose status is obtained.
ulFlags
Reserved; must be zero.
lpulMessageStatus
[out] Pointer to a pointer to a bitmask of flags indicating the message's status. Bits 0 through 15 are reserved and must be zero; bits 16 through 31 are available for implementation-specific use.

The following flags can be set:

MSGSTATUS_DELMARKED
The message has been marked for deletion.
MSGSTATUS_HIDDEN
The message is not to be displayed.
MSGSTATUS_HIGHLIGHTED
The message is to be displayed highlighted.
MSGSTATUS_REMOTE_DELETE
The message has been marked for deletion at the remote message store without downloading to the local client.
MSGSTATUS_REMOTE_DOWNLOAD
The message has been marked for downloading from the remote message store to the local client.
MSGSTATUS_TAGGED
The message has been tagged for a client-defined purpose.

Return Values

S_OK
The message status was successfully retrieved.

Remarks

The IMAPIFolder::GetMessageStatus method returns the status of a message. Message status is stored in the message's PR_MSG_STATUS property.

Notes to Implementers

How the message status bits are set, cleared, and used depends entirely on your implementation, except that bits 0 through 15 are reserved and must be zero. If you store messages in the IPM subtree, MAPI reserves bits 16 through 31 for use by IPM clients. If you store messages in other subtrees, you can use bits 16 through 31 for your own purposes.

See Also

IMAPIFolder::SetMessageStatus