在VSTO加载项中,我试图检索邮箱的类型是共享的、用户的还是资源的。我读了一些有趣的帖子相关的问题,并试图看看OlExchangeStoreType或GetConversation或MailboxType,但没有成功。我已经从@DmitryStreblechenko那里看到了解决方案(3),但如果可能的话,我宁愿不使用EWS。似乎,我正在寻找的值是msExchRecipientTypeDetails。如有任何帮助,我将不胜感激。
相关文章EWS获取邮箱类型(用户/资源/共享)
MailItem.GetConversation() on共享邮箱
在Outlook插件中,如何确定电子邮件's发件人是否为共享邮箱电子邮件地址?
https://www.codeproject.com/Questions/1088741/How-to-list-subfolders-in-inbox-folder-in-shared-e- https://learn.microsoft.com/en-us/answers/questions/612248/in-outlook-addin-how-do-i-determine-that-an-email.html
首先,VSTO没有为此提供任何东西。
第二,Outlook对象模型没有区分共享/本地存储。你不会在OOM中找到任何属性或方法。你能做的最好的事情就是使用商店。属性,该属性返回OlExchangeStoreType枚举中的一个常量,该常量指示Exchange存储的类型。
这取决于你的方式/变通是使用从上面共享的列表。
您不需要使用EWS -尝试读取Namespace.AutoDiscoverXml
属性以检查是否存在共享邮箱及其类型-您可以在OutlookSpy中看到它(我是它的作者):单击命名空间按钮,选择AutoDiscoverXml属性。
查找AlternativeMailboxType
节点-您可以有"Archive", "Delegate", " teamailbox "