我正在做一个涉及解析.pst文件的C#项目,我的团队选择使用救赎库来做这件事。我们已经成功地将电子邮件文件解析为RDOMail对象,但是现在我们想要将这些电子邮件的子集写入一个新的.pst文件。我已经使用email.SaveAs()函数成功地将子集写入.eml文件,但是我不知道如何将该列表另存为.pst。我已经对文档进行了筛选,但仍有许多不足之处。使用过Redemption的人能给我指出正确的方向或举个例子吗?提前感谢您的帮助!
发布于 2013-03-09 07:54:45
您将需要使用RDOSession.Stores.AddPstStore (返回RDOPSTStore对象)创建/打开PST文件。一旦拥有了存储,您就可以打开/创建文件夹(从RDOStore.IPMRootFolder开始)、创建邮件(RDOFolder.Items.Add)以及将旧邮件复制到新邮件中(RDOMail.CopyTo(RDOMail/RDOFolder))。
发布于 2017-05-03 11:25:36
在过去的几个小时里,我一直在努力做到这一点,我想把这段时间留给其他人。
您必须安装redemption并将其添加为项目的引用,才能使其正常工作
RDOSession session = new RDOSession(); // throws exception 1
session.LogonPstStore(@"c:\temp\output.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();https://stackoverflow.com/questions/15305266
复制相似问题