mapi

Different values for PidlidPrivate property in MAPI?


I am studying a MAPI property called PidLidPrivate. I find it has different values in different official document.

In https://learn.microsoft.com/en-us/office/client-developer/outlook/mapi/pidlidprivate-canonical-property, the property ID is 0x8506.

However, in the sample message in https://learn.microsoft.com/en-us/openspecs/office_file_formats/ms-pst/5ee9a00a-858b-47db-95b3-f91518640ea7, its property ID is 0x8020.

Why?


Solution

  • The first one is right - it is the property id.

    The second one is the property tag in a particular message store.

    The former is what you pass to IMAPIProp::GetIdsFromNames. Its value is the same for all stores. The latter is what IMAPIProp::GetIdsFromNames returned for that id (0x8506) for that particular message store. The actual value will vary from store to store.