-
Notifications
You must be signed in to change notification settings - Fork 39
Addressbook
Jan Engelhardt edited this page Nov 4, 2022
·
2 revisions
When adding a new personal contact, if the address in the Email field has not been underlined, then the property PidLidAddressBookProviderArray
will have value 0
. The contact will not show up in the AB Hierarchy Root (CONTAB.DLL) ► Outlook Address Book ► Contacts folder, because that uses a restriction of PR_MESSAGE_CLASS == IPM.DistList || (PR_MESSAGE_CLASS == IPM.Contact && PidLid..Array != 0)
on the PAB.
AB root container has no entryid. Subordinates of the root:
- contab.dll contributes "Outlook Address Book", this folder and its subobjects have PR_AB_PROVIDER_ID =
FD42AA0A18C71A10E8850B651C240000
(this happens to be muidContab minus one bit, interestingly) - emsmdb.dll contributes "Global Address List" plus other containers (taken from NSPI). PR_AB_PROVIDER_ID is muidEMSAB, the provider UID in the entryid is random (possibly profile-related).
Hierarchy subordinates of OAB:
- supposedly one folder for every
IPF.Contact
found in a store, but nope. Most often, this is justContacts
. Entryid is FE42…, so the folder and its contents are in fact generated by CONTAB.
Content subordinates of OABContacts:
- CONTAB looks at the store Contacts, applies a table restriction
(PR_MESSAGE_CLASS = "IPM.DistList" || (PR_MESSAGE_CLASS = "IPM.Contact" && PidLid… != 0))
and uses the result for the OABContacts. Entryids of the members is00000000FE42AA0A18C71A10E8850B651C2400000300000004000000FF0000004600000000000000D13…
, and this contains a reference to the actual store (D13…), quite like how MUIDZCSAB wraps the main store and its EID.
Content subordinates of GAL:
- supplied by NSPI, no frills