我正在开发outlook插件,它会将邮件记录到我们的系统中。 我们希望每个邮件线程/链一个条目。 我们正在开发插件的两个版本(对于outlook 2003和2010)。
对于outlook 2010,我使用MailItem的属性ConversationID来识别邮件线程。 使用这个属性是否安全?对于mailthread,sessionId是否相同,无论交换服务器的版本是什么?
对于outlook 2003,我找不到这个属性。我看到ConversationIndex属性。这可以用于任何方式吗?
我们的一些用户将使用2003,有些将使用2010,我们用于邮件线程的ID应该在不同版本的outlook中相同。
答案 0 :(得分:2)
PR_CONVERSATION_INDEX
如果我没记错的话,MAPI属性可以用作Outlook 97。
Outlook 2003对象模型不公开该属性,但它仍然存在于MAPI级别。由于PropertyAccessor在Outlook 2007之前未公开,因此您的选项为CDO 1.21或Redemption。
答案 1 :(得分:0)
以下是我正在考虑从outlook中识别记录到我们系统的对话。
Outlook 2003 -
使用(ConversationIndex的前44个字符)+用户ID。我不得不追加用户ID,因为同一邮件链的会话索引对于不同的用户机器可能是不同的。
Outlook 2010 -
使用会话ID。我的假设是这个对话ID是在服务器上生成的,并且与所有用户机器上的邮件线程相同。
如果我遗漏了任何东西,请纠正我。