Platform SDK: MAPI

Outgoing Queue Tables

An outgoing queue table contains information about all the outgoing messages for a message store. Message store providers implement outgoing queue tables for the MAPI spooler to use. Stores that do not support the sending or receiving of messages need not implement this table.

To access an outgoing queue table, the MAPI spooler calls the IMsgStore::GetOutgoingQueue method.

There is a requirement that messages be preprocessed and submitted to the transport provider in the same order as they were sent by the client application. The MAPI spooler is designed to accept messages from the message store in ascending order of submission time. Because of this requirement, there can be some delay before some messages appear in the outgoing queue table.

Message stores should either allow sorting on the outgoing queue table so that the MAPI spooler can sort the messages by submission time, or the default sort order should be by ascending submission time.

The outgoing queue table must send notifications when the contents of the queue changes.

The following properties make up the required column set in outgoing queue tables:

PR_CLIENT_SUBMIT_TIME PR_DISPLAY_BCC
PR_DISPLAY_CC PR_DISPLAY_TO
PR_ENTRYID PR_MESSAGE_FLAGS
PR_MESSAGE_SIZE PR_PRIORITY
PR_SENDER_NAME PR_SUBJECT
PR_SUBMIT_FLAGS  

For more information about how the outgoing queue table is used, see Sending Messages with Message Store Providers.