Outlook FROM字段与联系人通讯簿不匹配

时间:2014-12-09 05:26:47

标签: email outlook exchange-server

平台:Outlook 2013作为我的电子邮件客户端。

问题:我的联系人存储在联系人通讯录中,而不是GAL;

当收到某人的电子邮件时,我在FROM字段中看到的内容与Outlook中的“我的联系人通讯簿”中的内容不同。

我看到,我认为是用户在各自的电子邮件服务提供商中设置帐户的方式。

作为一个例子,我有“好朋友”,但当我收到这个人的电子邮件时,它会显示,例如“约翰史密斯”。

如何让Outlook“知道”在MY联系人地址中显示我的联系人信息?

1 个答案:

答案 0 :(得分:1)

您可以阅读发件人电子邮件地址(MailItem.SenderEmailAddress),打开“联系人”文件夹(Namespace.GetDefaultFolder(olFolerContacts)),使用MAPIFolder.Items.Find搜索匹配的联系人,并使用"([Email1Address] = 'user@domain.demo') or ([Emai21Address] = 'user@domain.demo') or ([Email3Address] = 'user@domain.demo')"等查询。

获得ContactItem对象后,请阅读其FileAs属性,并使用MailItem.PropertyAccessor.SetProperty在原始邮件上设置PR_SENDER_NAME和PR_SENT_REPRESENTING_NAME属性。属性的DASL名称是

"http://schemas.microsoft.com/mapi/proptag/0x0C1A001F"

"http://schemas.microsoft.com/mapi/proptag/0x0042001F"