我正在为outlook 2010做一些插件开发,我正在尝试将ContactItems
与电子邮件相关联( MailItem
)。我认为MailItem.Links
集合应该返回我想要的内容,但它是空的。也许我走错了路,但我现在已经没想到了。
我有一个Outlook.MailItem
,我想获得相关的Outlook.ContactItem
。当您使用Outlook打开邮件并将鼠标悬停在邮件地址上时,会显示一个联系人弹出窗口,因此该链接必须位于MailItem
中的某个位置,但我不知道在哪里。
例如,我尝试使用MailItem.Links
集合,该集合在工具提示中表示它代表项目所链接的联系人。
Explorer explorer = application.ActiveWindow() as Explorer;
MailItem mail = explorer.Selection as MailItem;
foreach (Link l in mail.Links)
{
System.Diagnostics.Debug.WriteLine("Link: " + l.Name);
}
MailItem
到目前为止是正确的,我可以随心所欲地做任何事情但是
MailItem.Links
集合为空。
答案 0 :(得分:0)
您应该尝试使用MailItem.Recipients
集合,其中包含将要或已经发送消息的地址(即To,CC,BCC )。您必须通过Recipient.AddressEntry
检查GetContact
以查看通讯录地址簿(CAB)中是否存在该地址,否则you will have to resolve it using ExchangeUser
通过GetExchangeUser
}。
AddressEntry.AddressEntryUserType
会告诉您邮件中包含的收件人类型 - Exchange User or List, CAB, or basic SMTP address。