【问题标题】:Creating a Outlook .MSG file in C#在 C# 中创建 Outlook .MSG 文件
【发布时间】:2022-04-03 01:14:47
【问题描述】:

我的任务是从具有关联元数据的 XML 文件编写 Outlook .MSG 文件。我试过使用 Aspose 库,但所有公开的 MapiMessage 属性都是只读的。使用 Outlook 对象模型,我无法更改创建日期以及我必须有权访问的其他属性。我也尝试过 Rebex 库,但它导出到 EML,并且不支持 RTF。

我的问题是,是否有 Mapi 或任何方式来编写 .MSG 文件并可以访问每个属性?

【问题讨论】:

  • FWIW,Outlook Redemption 可能能够通过它公开的“直接”(例如非安全*)类来支持这一点。但是,它仅适用于某些计算属性。

标签: c# outlook


【解决方案1】:

看看http://www.dimastr.com/redemption/ 不积极,但听起来它可以做你需要的事情

【讨论】:

    【解决方案2】:

    Aspose 现在支持创建新的 msg 文件。详情请查看http://www.aspose.com/documentation/utility-components/aspose.network-for-.net/creatingsaving-outlook-message-msg-files.html

    但是,目前不支持更新现有的 msg 文件。如果您使用 MapiMessage 类加载 msg 文件,属性仍将是只读的。

    【讨论】:

      【解决方案3】:

      尝试在Redemption 中使用RDOSession.CreateMessageFromMsgFile(我是它的作者)。你会得到RDOMail对象;您需要做的就是设置所有属性并调用RDOMail.Save。

      类似的东西

        Redemption.RDOSession Session = new RDOSession();
        Redemption.RDOMail Msg = Session.CreateMessageFromMsgFile(@"c:\temp\YourMsgFile.msg");
        Msg.Sent = true;
        Msg.Subject = "test";
        Msg.Body = "test body";
        Msg.Recipients.AddEx("the user", "user@domain.demo", "SMTP", rdoMailRecipientType.olTo);
        Msg.Save();
      

      【讨论】:

        猜你喜欢
        • 2017-07-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-06
        • 2014-12-25
        • 1970-01-01
        • 2016-11-19
        相关资源
        最近更新 更多