Platform SDK: MAPI

Addressing

The format of SMTP e-mail addresses is defined in RFC 822. MAPI components should handle any address that complies with that standard. However, there is a particular form of RFC 822 address that best encodes MAPI addresses:

display-name <email-address>

The angle brackets are included as literals. Blanks are common in display names; they need not be quoted. A typical address might look like this one, which belongs to one of the coauthors of RFC 1521:

Nathaniel Borenstein <nsb@bellcore.com>

If the display name contains characters that have special meaning in SMTP addresses, such as < or @, the entire display name should be quoted using double quotes. On outbound mail, if the total length of the e-mail address plus display name exceeds 255 characters, the display name should be dropped.

The parts of an SMTP address map into MAPI properties as follows:

SMTP address component MAPI property
display-name for all recipients PR_DISPLAY_NAME
display-name for From field PR_SENDER_NAME
display-name for Sender field PR_SENT_REPRESENTING_NAME
email-address PR_EMAIL_ADDRESS
implicit, always "SMTP" PR_ADDRTYPE

If there is no display name for an address on inbound mail, the entire e-mail address should be used instead. The address type is always SMTP.

Recipient properties are taken from the MAPI message's recipient table; sender properties are taken from the message itself.