About Named Properties Used by Outlook

About Named Properties Used by Outlook

MAPI provides a facility for assigning names to certain properties, for mapping these names to unique identifiers, and for making this name-to-identifier mapping persistent across sessions. Named properties are identified by a name and a globally unique identifier (GUID) for a property set. The name can be a number or a string. For Microsoft Office Outlook, the property set is often a namespace defined by Outlook, such as PSETID_Appointment.

Named properties are manipulated by using the IMAPIProp::GetIDsFromNames function and the IMAPIProp::GetNamesFromIDs function. The name and the property set GUID are passed to the GetIDsFromNames function to obtain a property identifier that is valid for the current MAPI session. Because this property identifier can vary from computer to computer, the only consistent way to access a named property is to know its name and property set GUID. The range for identifiers is always in the 0x8000 and 0xFFFE range.

Any object that implements the IMAPIPROP interface can support named properties. Specifically, a MAPI service provider or a MAPI client must implement IMAPIProp::GetProps to get values of named properties. Setting named properties used by Outlook is not supported because of the risk of corrupting data that is shared with other MAPI providers or clients.

Outlook uses MAPI named properties to implement many of its features, for example, attachment security and meeting counter-proposals. Above this underlying data, Outlook exposes some of these properties as item properties in the Outlook object model. For example, the Email1Address property of the ContactItem object in the object model corresponds to the named property dispidEmailEmailAddress in the PSETID_Address namespace. But in general, due to concerns for compatibility and data integrity, many of the MAPI properties that are used by Outlook are not exposed in the object model.

This reference describes a number of named properties that are listed below.

Named properties in the PSETID_Address namespace are the following:

dispidEmailAddrType

dispidEmailEmailAddress

dispidEmail1OriginalEntryID

dispidEmail2AddrType

dispidEmail2DisplayName

dispidEmail2EmailAddress

dispidEmail2OriginalDisplayName

dispidEmail2OriginalEntryID

dispidEmail3AddrType

dispidEmail3DisplayName

dispidEmail3EmailAddress

dispidEmail3OriginalDisplayName

dispidEmail3OriginalEntryID

dispidEmailDisplayName

dispidEmailOriginalDisplayName

dispidFileUnder

dispidInstMsg

dispidWorkAddressCity

dispidWorkAddressCountry

dispidWorkAddressPostalCode

dispidWorkAddressPostOfficeBox

dispidWorkAddressState

dispidWorkAddressStreet

dispidYomiCompanyName

dispidYomiFirstName

dispidYomiLastName

Named properties in the PSETID_Appointment namespace are the following:

dispidAllAttendeesString

dispidApptCounterProposal

dispidApptDuration

dispidApptEndWhole

dispidApptStartWhole

dispidBusyStatus

dispidCCAttendeesString

dispidConfCheck

dispidLocation

dispidRecurring

dispidToAttendeesString

Named properties in the PSETID_Common namespace are the following:

dispidCommonEnd

dispidCommonStart

dispidCompanies

dispidContacts

dispidCustomFlag

dispidFormPropStream

dispidFormStorage

dispidHeaderItem

dispidPageDirStream

dispidPropDefStream

dispidReminderNextTime

dispidReminderSet

dispidReminderTime

dispidRequest

dispidScriptStream

dispidSmartNoAttach

dispidToDoTitle

dispidUseTNEF

Named properties in the PSETID_Meeting namespace are the following:

dispidMeetingType

Named properties in the PSETID_Task namespace are the following:

dispidTaskActualEffort

dispidTaskDueDate

dispidTaskEstimatedEffort

dispidTaskFRecur

dispidTaskStartDate

dispidTaskStatus

Named properties in the PS_INTERNET_HEADERS namespace are the following:

return-path

Named properties in the PSETID_Log namespace are the following:

dispidLogDuration

dispidLogEnd

dispidLogStart

dispidLogType

Named properties in the PS_PUBLIC_STRINGS namespace are the following:

Keywords

JunkEmailMoveStamp

See Also

Constants for Outlook Named Properties

About Meeting Requests as Informational Updates and Full Updates

How to: Determine if Outlook Downloaded Only the Header of a Message

How to: Get the E-mail Address of a Contact Item

How to: Identify a Meeting Item as a Counter-Proposal to a Prior Meeting Request

How to: Remove Custom Form Definition that Has Been Saved with a Message