使用Redemption创建一个pst文件



我正在c#中处理一个涉及解析.pst文件的项目,我的小组选择使用Redemption库来完成此工作。我们已经成功地将电子邮件文件解析为RDOMail对象,但是现在我们想要将这些电子邮件的一个子集写入一个新的.pst文件。我已经使用email. savea()函数成功地将子集写入. email文件,但是我不知道如何将该列表保存为.pst。我一直在筛选文档,但它有很多不足之处。任何使用过救赎的人可以给我指出正确的方向或提供一个例子吗?提前感谢您的帮助!

您需要使用RDOSession.Stores.AddPstStore(返回RDOPSTStore对象)创建/打开PST文件。一旦您有了存储,您可以打开/创建文件夹(从RDOStore.IPMRootFolder开始),创建消息(RDOFolder.Items.Add)并将旧消息复制到新消息(RDOMail.CopyTo(RDOMail/RDOFolder))。

在过去的几个小时里,我一直在努力做到这一点,我想把时间留给别人。

您必须安装赎回并将其作为引用添加到您的项目中才能使其工作

            RDOSession session = new RDOSession(); // throws exception 1
        session.LogonPstStore(@"c:tempoutput.pst");
        RDOFolder folder = session.GetDefaultFolder(rdoDefaultFolders.olFolderInbox);
        string[] fileEntries = Directory.GetFiles(@"C:emlFiles", "*.eml");

        foreach (string filePath in fileEntries)
        {
            RDOMail mail = folder.Items.Add("IPM.Mail");
            mail.Sent = true;
            mail.Import(filePath, 1024);
            // folder.Items.Add(mail);
            mail.Save();
        }
        session.Logoff();

我还为它创建了一个小的示例windows窗体应用程序,我知道代码很丑,但它确实奏效了

最新更新