2015-11-19 1 views
3

В Outlook 2007 у меня есть ссылка на объект mailItem. И я хочу знать, находится ли файл mailItem в папке delete items.Как проверить, находится ли файл mailItem в папке Удаленные объекты Outlook по умолчанию

Я знаю, что я могу использовать MailItem родительскую собственность, чтобы узнать папку, в которой MailItem находится. Например this question shows how to do this.

Проблема у меня есть, что имя свойства папки изменяется в зависимости от языка сервера Exchange или на чем-то другом, кроме языковых настроек Outlook.

Я надеялся найти свойство на объекте папки, которое вернет Outlook.OlDefaultFolders.olFolderDeletedItems, но я не могу его найти.

Таким образом, существует ли метод нейтрального языка для определения того, является ли объект папки удаленной папкой?

Редактировать и можно ответить только Я полагаю, я мог бы получить папку DeletedItems с помощью метода пространства имен «GetDefaultFolder (Outlook.OlDefaultFolders.olFolderDeletedItems)», а затем сравнить Имя свойства этого объекта папки со свойством имени папки mailItem.

Редактировать Смотрите ниже аналогичной идеей, но используя EntryID как свойство для сравнения.

ответ

4

Вызов Namespace.GetDefaultFolder(olFolderDeletedItems), получить родительскую папку (MailItem.Parent), а затем сравнить их ввода идентификаторов (MAPIFolder.EntryID) с помощью Namespace.CompareEntryIDs.

Пространство имён может быть получено от Application.Session или Application.GetNamespace("MAPI")

Смежные вопросы