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.

A byte-order independent version of a GUID structure that is used to uniquely identify a service provider.

Header file:


Related macro:


typedef struct _MAPIUID
  BYTE ab[16];


  • ab
    An array that contains a 16-byte identifier.


A MAPIUID structure is a GUID structure put into IntelĀ® processor byte order.

MAPI creates MAPIUID structures in a way that makes it very rare for two different items to have the same identifier. MAPIUID structures can be stored as binary properties or as files, without regard to the byte ordering of the computer storing or accessing the information.

MAPIUID structures are used:

  • To identify a profile section.

  • In the entry identifiers of message store and address book objects to identify the responsible service provider.

  • In the PR_SEARCH_KEY (PidTagSearchKey) property of messages.

To generate a MAPIUID identifier for a search key, service providers call IMAPISupport::NewUID.

When a client transmits a message across a network, it should use a protocol or transmission format that does not change the byte order of MAPIUID data.

For more information about how MAPIUID structures are used, see the following topics:

Registering Service Provider Unique Identifiers

Setting Transport Order

See Also






MAPI Structures