我正在使用Outlook兑换(http://www.dimastr.com/redemption/home.htm)并遵循C#代码从.eml文件生成PST文件。
RDOSession session = new RDOSession();
RDOPstStore store = session.LogonPstStore(newpstpath);
RDOFolder folder = store.IPMRootFolder.Folders.Item(directoryEmlFile);
if (folder == null)
{
folder = store.IPMRootFolder.Folders.Add(directoryEmlFile);
}
RDOMail mail = folder.Items.Add("IPM.Note");
mail.Import(directoryEmlFile + "\\0a53e310-b841-43bf-9586-8e7ddb4cd175" + ".eml");
mail.Sent = true;
mail.Save();
store.Save();
它会创建一个PST文件,但当我将其导入Outlook时,文件夹结构与此类似。
Personal Folders
-C:\Users\asanka\eml
在C:\ Users \ asanka \ eml文件夹中我可以看到导入的电子邮件。这是.eml文件最初位于的文件夹。我需要摆脱它并拥有这样的文件夹结构。
Personal Folders
-asanka
-inbox
我该怎么做?任何帮助表示赞赏。
答案 0 :(得分:1)
这是您传递给Folders.Add
的文件夹名称,对吗?您需要传递适当的名称(asanka)来创建文件夹。由于你有两个文件夹,你可能需要做两次:
RDOFolder folder1 = store.IPMRootFolder.Folders.Item("asanka");
if (folder1 == null) folder1 = store.IPMRootFolder.Folders.Add("asanka");
RDOFolder folder = folder1.Folders.Item("Inbox");
if (folder == null) folder = folder1.Folders.Add("Inbox");