在 Outlook 的 COM 插件(使用 Redemption)中,我需要能够确定我正在查看的给定消息是已接收还是已发送(我只想对传入的消息采取行动)。在我的情况下,仅查看父文件夹或收件人或发件人将不起作用,因为传入和传出的消息可能会一起放在同一个(公共)文件夹中,并且可能有多个有效的发件人。此外,还可能存在从一个有效发件人发送到另一个有效发件人的内部消息。
检查PR_RECEIVED_BY_*
或PR_RCVD_REPRESENTING_*
识别收到的邮件对我来说也不是完整的解决方案,因为这些属性仅在邮箱存储中设置,而我正在处理的消息通常位于公用文件夹存储中(更准确地说:在启用邮件的 Public文件夹,代表该文件夹发送的消息也放置在其中)。
我已经使用 OutlookSpy 来比较各种示例邮件的 MAPI 属性,并多次认为我找到了一些东西,但到目前为止,我没有发现任何东西被证明是最终稳定的解决方案(例如,起初PR_MESSAGE_RECIP_ME
似乎只对传入邮件进行设置,而从未在传出邮件上设置的,但后来我发现传入的消息也缺少该属性)。
本质上,我正在寻找一些属性(或其值),它总是设置在传入或传出消息上。
这需要至少适用于 Exchange 2003 和 2007 以及 Outlook 2003 和 2007。
有任何想法吗?