Platform SDK: MAPI |
The PR_MSG_STATUS property contains a 32-bit bitmask of flags defining the status of a message in a contents table.
Header file: | MAPITAGS.H |
Must be a column in: | Message store contents tables |
Identifier: | 0x0E17 |
Property type: | PT_LONG |
Property tag: | 0x0E170003 |
A message can exist in a contents table and in one or more search-results tables, and each instance of the message can have a different status. The PR_MSG_STATUS property should not be considered a property on a message but a column in a contents table.
A client application can set one or more of the following flags in PR_MSG_STATUS:
The MSGSTATUS_DELMARKED, MSGSTATUS_HIDDEN, MSGSTATUS_HIGHLIGHTED, and MSGSTATUS_TAGGED flags are defined by the client. Transport and store providers pass these bits without any action.
Clients can interpret these values in any way that is appropriate for their applications. One way that many clients use the PR_MSG_STATUS property is to display messages marked for deletion with a representative icon.
A remote viewer client can set MSGSTATUS_REMOTE_DELETE or MSGSTATUS_REMOTE_DOWNLOAD on messages in the header folder presented to it by the remote transport provider. The client application can examine each message header in this folder to determine whether the message should be downloaded or deleted at the remote message store. It then uses the IMAPIFolder::SetMessageStatus method to set the appropriate flag. SetMessageStatus is the only way to set any of the PR_MSG_STATUS flags; the IMAPIProp::SetProps method cannot be used. To retrieve the PR_MSG_STATUS property, clients call IMAPIFolder::GetMessageStatus rather than IMAPIProp::GetProps. For more information on remote viewing and remote transport providers, see Remote Transport Architecture.
Bits 16 through 31 (0x10000 through 0x80000000) of PR_MSG_STATUS are available for use by the interpersonal message (IPM) client application. All other bits are reserved for use by MAPI; those not defined in the preceding table should be initially set to zero and not altered subsequently.