我正在使用C#开发Outlook插件,并且在从独立的.msg文件打开的邮件中区分从文件夹(收件箱,已发送等)打开的邮件时遇到问题。
我已经尝试检查Parent属性,但它显示了两种类型的Inbox。
有任何想法吗?
/萨姆
答案 0 :(得分:1)
查看属性,它看起来如果从文件系统打开MailItem,则.EntryID属性为空,如果从文件夹中打开文件,则具有值。根据{{3}},这是有道理的;一个警告是,如果邮件是新邮件(即尚未保存在文件夹中,但文件系统中也不存在),您还希望此属性为空。
关于空白值的帮助:
因此,EntryID属性不是 为Outlook项目设置,直到它 保存或发送
您希望在实施之前对其进行试验并确保其运行正确:)
失败了,下一步可能很复杂;一种方法是检查Outlook打开的句柄。通过help entry检查它们(在非托管的上下文中)表明每条消息都有一个句柄;句柄的名称与邮件主题匹配,路径是文件的路径。列举这些的一个解决方案是Process Explorer。
HTH, 杰夫