C# 在ASP.Net MVC应用程序中创建Outlook模板(.oft)文件

C# 在ASP.Net MVC应用程序中创建Outlook模板(.oft)文件,c#,asp.net-mvc-4,outlook,oft,C#,Asp.net Mvc 4,Outlook,Oft,我需要将html模板作为OFT文件下载到ASP.NETMVC4 web应用程序中(使用C#)。我已经尝试过Microsoft.Office.Interop.Outlook,它在我的本地计算机上运行良好,但在服务器上运行失败。它要求在服务器上安装Outlook,我还听说在服务器上为web应用程序自动化MS office应用程序不是一个好的做法。是否可以在不使用MS Office Outlook的情况下创建oft文件是否有免费的库来执行此操作?任何人都知道解决方案,请提供帮助。OFT文件是一个具有不

我需要将html模板作为OFT文件下载到ASP.NETMVC4 web应用程序中(使用C#)。我已经尝试过Microsoft.Office.Interop.Outlook,它在我的本地计算机上运行良好,但在服务器上运行失败。它要求在服务器上安装Outlook,我还听说在服务器上为web应用程序自动化MS office应用程序不是一个好的做法。是否可以在不使用MS Office Outlook的情况下创建oft文件是否有免费的库来执行此操作?任何人都知道解决方案,请提供帮助。

OFT文件是一个具有不同类GUID的MSG文件。MSG文件是一个OLE存储(IStorage)文件

由于MSG文件格式为,因此可以创建CLSID为{0006F046-0000-0000-C000-0000000000 46}而不是{00020D0B-0000-0000-C000-0000000000 46}的MSG文件

您还可以使用-它可以在服务中使用,您只需确保安装了具有匹配位的Outlook(Redemption使用Outlook安装的MAPI系统,而不是Outlook对象模型,该系统不能在服务中使用)

VB脚本:

  set Session = CreateObject("Redemption.RDOSession")
  set Msg = Session.CreateMessageFromMsgFile("c:\Temp\TestMsg.msg")
  Msg.Body = "This is a test template"
  Msg.Subject = "Template"
  Msg.Save
  Msg.SaveAs "c:\Temp\TestTemplate.oft", olTemplate
C#(在我的头顶上):

  Redemption.RDOSession rSession = new Redemption.RDOSession();
  Redemption.RDOMail Msg = rSession.CreateMessageFromMsgFile("c:\Temp\TestMsg.msg");
  Msg.Body = "This is a test template";
  Msg.Subject = "Template";
  Msg.Save();
  Msg.SaveAs("c:\Temp\TestTemplate.oft", Redemption.rdoSaveAsType.olTemplate);