我有一个允许人们将文件附加到记录的应用程序。有些用户正在上传与相关记录相关的电子邮件。一切都很好,花花公子。
但是有些用户正在使用MS Outlook并正在上传MSG文件,而其他用户正在使用thunderbird并上传EML文件。理想情况下,我希望所有用户都可以上传EML文件,因为它们可以互操作,也可以在移动设备上运行。
切入追逐我想要通过扩展或MIME类型检测上传的MSG,并转而转换为EML而不是存储它。这对用户是透明的,因为Outlook可以愉快地打开EML文件。
有没有人知道我可以调用的第三方命令行实用程序为我做转换?或者是否有一个可用于将MSG转换为EML的c#代码块?
由于
答案 0 :(得分:3)
您可以使用Redemption。像下面这样的东西(从头顶上掉下来)应该可以工作:
RDOSession Session = new RDOSession();
RDOMail Msg = Session.GetMessageFromMsgFile("c:\temp\YourMsgFile.msg");
Msg.SaveAs("c:\temp\YourEmlFile.eml", rdoSaveAsType.olRFC822);