您好, 我使用C#代码创建了一个PST文件。我的示例代码在这里。
string pstlocation = @"C:\Users\{USER}\Desktop\PST Files\Test.pst";
Outlook._Application OutlookObject = this.Application;
Outlook.NameSpace outlookNs = null;
Outlook.Folder objRootFolder = null;
outlookNs = Application.GetNamespace("MAPI");
outlookNs.AddStore(pstlocation);
objRootFolder = outlookNs.Folders.GetLast() as Folder;
我的PST文件已在Outlook 2013中成功添加。当我尝试删除已删除邮件但未删除时它会给我们一个错误。
foreach (Folder objFolder in objRootFolder.Folders)
{
objFolder.Delete();
//It gives an error.
}
错误:类型' System.Runtime.InteropServices.COMException'发生在OutlookAddInPSTTest.dll中但未在用户代码中处理
其他信息:无法删除此文件夹。右键单击该文件夹,然后单击“属性”以检查该文件夹的权限。请与文件夹所有者或管理员联系以更改您的权限。
=============================================== ====================
那么,如何从PST文件中删除已删除邮件。
答案 0 :(得分:0)
默认情况下,您无法删除Outlook使用的特殊文件夹。但是,有几个允许它的MS Exchange实用程序/客户端; Outlook将在启动时重新创建它们。
参考:Microsoft Support- Cannot delete default Outlook folders