C#Outlook通过其特殊类型来区分文件夹
本文关键字:文件夹 类型 C#Outlook | 更新日期: 2023-09-27 18:25:05
我需要检查给定的文件夹是否具有特殊类型。例如,我需要检查一个文件夹是否是发件箱文件夹。我知道我可以用Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderOutbox);
检索发件箱文件夹但那样我只能访问我主邮箱的发件箱文件夹。由于我使用多个邮箱,这还不够。我知道我可以通过检查文件夹的名称来区分它,但由于名称是本地化的,而且它应该适用于所有语言,所以这是不可接受的解决方案。
或者,也许有一种方法可以检索所有特殊类型的文件夹,比如发件箱,这会让我向前迈进一步。
谢谢你的回复。
我使用
HashSet<string> excludeFolderIds = new HashSet<string>();
Outlook.Stores stores = application.Session.Stores;
foreach(Outlook.Store store in stores){
//exclude outbox folder from event
Outlook.MAPIFolder exclude = store.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderOutbox);
excludeFolderIds.Add(exclude.EntryID);
}
稍后通过调用excludeFolderIds.Contains(folder.EntryID)
检查文件夹是否具有此类型
因此store.GetDefaultFolder(OlDefaultFolder)
是从不同帐户获取默认文件夹的关键