0
我使用Outlook兌換(http://www.dimastr.com/redemption/home.htm)和以下C#代碼從.eml文件生成PST文件。Outlook兌換 - eml to pst - 指定文件夾Hiarachy
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
我該怎麼做?任何幫助表示讚賞。
謝謝你的答案。我按照你的指示更新了我的代碼。但是現在我在執行mail.Import行時遇到了異常。它說{「錯誤導入:0x80030050」} \t System.Exception {System.Runtime.InteropServices.COMException} –
錯誤代碼是STG_E_FILEALREADYEXISTS。您在調用Import時沒有指定格式,因此Redemption默認爲olMsg。指定rdoSaveAsType.olRFC822 –
好吧,你做了我的一天。現在該程序正在運行! –