是否有一种方法为与RDOMail
文件中打开的Outlook消息相对应的MailItem
创建.msg
实例?
我通常的方法是从CurrentItem
获取Inspector
,将其转换为MailItem
,检索其EntryID
和StoreID
值,最后通过RDOSession
方法从GetMessageFromID
加载它。
但是,对于从.msg
打开的邮件,EntryID
属性返回null
。还有其他解决方法吗?我假设我可以改用GetMessageFromMsgFile
方法,但是如何从MailItem
检索消息的完整路径?
附言理想情况下,该解决方案应与Outlook 2003对象模型一起使用。
最佳答案
您可以在此处执行两种方法...
使用MailItem
将_MailItem.SaveAs()
保存到磁盘。然后使用GetMessageFromMsgFile
。
将MailItem
保存到Folder
(存储)以保留它,并为其指定EntryID
和StoreID
。使用MailItem.Save()
和MailItem.Move(tempFolder)
将MSG保留到文件夹中。我通常使用hidden folder for this storage swap。您将需要在启动时或定期清除此交换文件夹(Outlook具有持久的锁定,因此最好使用try / catches)。
关于c# - 从.msg文件打开RDOMail for MailItem打开,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11205135/