gpt4 book ai didi

c# - Outlook 邮件项目 : How to distinguish whether mail is incoming or outgoing?

转载 作者:可可西里 更新时间:2023-11-01 08:19:55 27 4
gpt4 key购买 nike

我正在用 C# 编写 VSTO Outlook 插件,我需要区分给定的 MailItem 是传入还是传出(或者两者都不是,例如草稿)。

有什么万无一失的方法吗?我现在拥有的最佳解决方案是获取收件人、抄送和密件抄送列表,从事件帐户加载电子邮件地址,并检查这两个列表是否相交,但这对我来说似乎很脆弱,我希望有更好的解决方案.

用例:我想获取电子邮件的相关日期,可以是 ReceivedTime 或 SentOn,但要知道我应该使用哪一个,我需要知道邮件是已发送还是已收到。

谢谢你的想法:)

最佳答案

来到这个页面是因为我在 VBA 中遇到了同样的问题。检查父文件夹很麻烦,因为一条消息可能保存在多个文件夹深处(因此您必须迭代多个文件夹),或者用户可能已经更改了文件夹。一个极端的例子:已删除的邮件文件夹包含传入和传出的邮件项目。

我选择了与上面另一个人 (Adi Kini) 类似的解决方案,我在其中检查了 ReceivedByName(我认为他选择了 ReceivedEntryID)。 ReceivedByName 属性对于已发送的消息始终为 Null (""),无论它当前位于何处。这个方法可以找到一个已经拖到收件箱的已发邮件!。这似乎是一种相当可靠的检查方法。

检查邮件是传入还是传出这样看似简单的事情竟然会误导我们,这似乎很奇怪!

关于c# - Outlook 邮件项目 : How to distinguish whether mail is incoming or outgoing?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1285713/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com