MAPINAMEID
This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
Describes a named property.
Header file: |
Mapidefs.h |
typedef struct _MAPINAMEID
{
LPGUID lpguid;
ULONG ulKind;
union
{
LONG lID;
LPWSTR lpwstrName;
} Kind;
} MAPINAMEID, FAR *LPMAPINAMEID;
Members
lpguid
Pointer to a GUID structure defining a particular property set; this member cannot be NULL. Valid values are as follows:PS_PUBLIC_STRINGS
PS_MAPI
A client-defined value
ulKind
Value describing the type of value in the Kind member. Valid values are as follows:MNID_ID
The Kind member contains an integer value that represents the property name.MNID_STRING
The Kind member contains a Unicode character string representing the property name.
Kind
Union describing the name of the named property. The name can be either an integer value, stored in lID, or a Unicode character string, stored in lpwstrName.
Remarks
The MAPINAMEID structure is used to describe named properties properties that have identifiers over 0x8000. A property set is an important part a named property. For example PS_PUBLIC_STRINGS or PS_ROUTING_ADDRTYPE are property sets defined by MAPI.
Named properties enable clients to define custom properties in a larger namespace than is available in the MAPI-defined property identifier range. Property names cannot be used to obtain property values directly; they must first be mapped to property identifiers through the IMAPIProp::GetIDsFromNames method. For particular objects such as messages, MAPI reserves a range of property identifiers for custom properties. Therefore, for these objects, clients do not have to use named properties and can save the associated overhead.
For more information about named properties, see Named Properties.