IMessage::GetRecipientTable
Applies to: Outlook 2013 | Outlook 2016
Returns the message's recipient table.
HRESULT GetRecipientTable(
ULONG ulFlags,
LPMAPITABLE FAR * lppTable
);
Parameters
ulFlags
[in] Bitmask of flags that controls the return of the table. The following flags can be set:
MAPI_DEFERRED_ERRORS
Allows GetRecipientTable to return successfully, possibly before the table is fully available to the calling client. If the table is not available, making a subsequent call to it can cause an error.
MAPI_UNICODE
String columns should be in Unicode format. If the MAPI_UNICODE flag is not set, the string columns should be in ANSI format.
lppTable
[out] Pointer to a pointer to the recipient table.
Return value
S_OK
The recipient table was returned successfully.
Remarks
The IMessage::GetRecipientTable method returns a pointer to the message's recipient table, which includes information about all of the recipients for the message. There is one row for every recipient.
Recipient tables have a different column set depending on whether the message has been submitted. For a complete list of the columns in a recipient table, see Recipient Tables.
Some recipient tables support a wide variety of restrictions; others do not. Support for restrictions depends on the message store provider's implementation.
Setting the MAPI_UNICODE flag in the ulFlags parameter affects the following calls to the recipient table:
IMAPITable::QueryColumns to retrieve the column set.
IMAPITable::QueryRows to retrieve rows.
IMAPITable::QuerySortOrder to retrieve the sort order.
Setting the Unicode flag requests that the information for any string columns returned from these calls be in Unicode format. However, because not all message store providers support Unicode, setting this flag is only a request.
Notes to callers
You can change a recipient table while it is open by calling the IMessage::ModifyRecipients method. ModifyRecipients adds recipients, deletes recipients, or modifies recipient properties.