我必须维护一个Outlook加载项,该加载项会在Outlook中接收选定的邮件,将其保存到文件中,然后将文件名发送到后端服务器,如果尚未发送邮件,则发送该邮件
首先使用Outlook.MailItem.SaveAs(filePath, Outlook.OlSaveAsType.olMSG)
保存邮件。此时,如果打开生成的文件,则会看到Outlook html消息。一切都很好。
然后,在下面两行中,使用RDOMail rm = currentRdoSession.GetMessageFromMsgFile(filePath)
重新打开此邮件文件。在某些情况下,字段Sent
,SentOn
和Sender
被更新。
最后,使用rm.SaveAs(anotherFilePath, Outlook.OlSaveAsType.olMSG)
将邮件保存到新文件。
这时,如果我打开这个新文件,我会看到一个纯文本Outlook消息(选中了“纯文本”选项)。为什么会这样?如何确保保存原始HTML消息?
谢谢。
注意:为什么邮件要保存两次?我认为这是用于将邮件标记为已发送,即使尚未发送也是如此。如果后端服务器处理邮件文件时发生错误,我们不希望将其发送给收件人。或类似的东西...