2015-11-30 121 views
0

我需要檢查給定文件夾是否有特殊類型。例如,我需要檢查一個文件夾是否是發件箱文件夾。我知道我可以通過Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderOutbox); 檢索發件箱文件夾,但這樣我只能訪問我的主郵箱的發件箱文件夾。由於我使用多個郵箱,這是不夠的。 我知道我可以通過檢查它的名稱來區分文件夾,但由於名稱是本地化的,它應該適用於所有語言,這是不可接受的解決方案。C#Outlook根據其特殊類型區分文件夾

或者,也許有一種方法可以檢索像發件箱這樣的特殊類型的所有文件夾,這將使我向前邁進一步。

感謝您的回覆。

回答

0

我用

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)後,如果一個文件夾中有這種類型的檢查是從不同的帳戶得到默認文件夾的關鍵