C# Outlook加载项中的Recipient.Name和ExchangeUser.Name之间有什么区别?
有以下两个对象:C# Outlook加载项中的Recipient.Name和ExchangeUser.Name之间有什么区别?,c#,wpf,outlook,outlook-addin,C#,Wpf,Outlook,Outlook Addin,有以下两个对象: Microsoft.Office.Interop.Outlook.Recipient() Microsoft.Office.Interop.Outlook.ExchangeUser() 它们都有一个name属性,在我的例子中似乎是相同的,我可以使用Recipient.AddressEntry.GetExchangeUser()从Recipient转换到ExchangeUser。我使用哪个名称属性重要吗?这两个方面有什么区别(从文档的写/读差异中可以看出旁白)。我不是微软产品线的
Microsoft.Office.Interop.Outlook.Recipient
()Microsoft.Office.Interop.Outlook.ExchangeUser
()它们都有一个name属性,在我的例子中似乎是相同的,我可以使用
Recipient.AddressEntry.GetExchangeUser()
从Recipient
转换到ExchangeUser
。我使用哪个名称属性重要吗?这两个方面有什么区别(从文档的写/读差异中可以看出旁白)。我不是微软产品线的专家。但仅仅从命名上看,Outlook是一个客户端,Exchange是一个服务器
也就是说,您可以在Outlook客户端中使用收件人对象来指代收件人,无论实际的邮件服务器是什么,它可以是Exchange(如您的情况),也可以是Gmail、Yahoo!Mail,Mail.live.com,随便什么
ExchangeUser对象专门用于Exchange邮箱用户,这通常是在企业中设置的。因此,您可以找到收件人对象没有的详细属性,如JobTitle和OfficeLocation(以及更多)
此对象提供对适用于Exchange用户的属性(如FirstName、JobTitle、LastName和OfficeLocation)的一流访问
请注意,如果未连接到Exchange服务器,则无法使用Recipient.AddressEntry.GetExchangeUser()。我不是Microsoft产品线方面的专家。但仅仅从命名上看,Outlook是一个客户端,Exchange是一个服务器
也就是说,您可以在Outlook客户端中使用收件人对象来指代收件人,无论实际的邮件服务器是什么,它可以是Exchange(如您的情况),也可以是Gmail、Yahoo!Mail,Mail.live.com,随便什么
ExchangeUser对象专门用于Exchange邮箱用户,这通常是在企业中设置的。因此,您可以找到收件人对象没有的详细属性,如JobTitle和OfficeLocation(以及更多)
此对象提供对适用于Exchange用户的属性(如FirstName、JobTitle、LastName和OfficeLocation)的一流访问
请注意,如果未连接到Exchange服务器,则无法使用Recipient.AddressEntry.GetExchangeUser()。收件人对象作为收件人表中的一行存储在邮件本身中<代码>收件人。名称
对应于PR\u DISPLAY\u Name
。
该行中的PR\u ENTRYID
属性(如果收件人已解析,则存在)指向通讯簿对象。这就是Recipient.AddressEntry
返回的内容-它使用收件人的PR\u ENTRYID
调用IAddrBook::OpenEntry
返回的AddressEntry.Name
理论上可以与Recipient.Name
不同(一个来自通讯簿对象,另一个来自消息收件人表中的PR\u DISPLAY\u Name
)ExchangeUser
本质上是具有Exchange特定属性的AddressEntry
对象的扩展,因此ExchangeUser.Name
应该与AddressEntry.Name
相同
您可以使用-选择一条消息,转到GetRecipientTable选项卡来查看此消息。右键单击PR\u ENTRYID
属性,然后选择IMAPISession::OpenEntry
。您还可以将PR\u DISPLAY\u NAME
属性编辑为与GAL对象不同的内容<保存邮件时,邮件上的code>PR\u DISPLAY\u TO
属性将反映新的收件人名称。收件人对象作为收件人表中的一行存储在邮件本身中<代码>收件人。名称对应于PR\u DISPLAY\u Name
。
该行中的PR\u ENTRYID
属性(如果收件人已解析,则存在)指向通讯簿对象。这就是Recipient.AddressEntry
返回的内容-它使用收件人的PR\u ENTRYID
调用IAddrBook::OpenEntry
返回的AddressEntry.Name
理论上可以与Recipient.Name
不同(一个来自通讯簿对象,另一个来自消息收件人表中的PR\u DISPLAY\u Name
)ExchangeUser
本质上是具有Exchange特定属性的AddressEntry
对象的扩展,因此ExchangeUser.Name
应该与AddressEntry.Name
相同
您可以使用-选择一条消息,转到GetRecipientTable选项卡来查看此消息。右键单击PR\u ENTRYID
属性,然后选择IMAPISession::OpenEntry
。您还可以将PR\u DISPLAY\u NAME
属性编辑为与GAL对象不同的内容<保存邮件时,邮件上的code>PR\u DISPLAY\u TO属性将反映新的收件人名称