Рассмотрим следующий сценарий. Кто-то поделился со мной календарем. У меня есть полный доступ к этому календарю. Когда я удаляю элемент в календаре, запускается событие Folder.BeforeItemMove
. Все идет нормально. Я хочу отслеживать удаление, проверяя, является ли идентификатор записи MoveTo null
или идентификатором записи Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderDeletedItems)
, который работает. Теперь вернемся к случаю, когда элемент находится в общей папке:
- Согласно документации Свойство olFolderDeletedItems не используется в качестве параметра для GetSharedDefaultFolders() (просто чтобы убедиться, что я получил доступ к другим разрешенным папкам, которые работали)
- Я попытался перебрать коллекцию Stores. Календаря там нет
- Я попытался получить доступ к свойству магазина в папке MoveTo ->
null
- Я попытался получить магазин из сеанса (чтобы проверить PR_IPM_WASTEBASKET_ENTRYID) -> не удалось
- Я МОГУ получить имя папки. Проблема в том, что она может быть переименована и/или локализована, и я не хочу, чтобы массив со всеми удаленными именами папок плавал вокруг, если я не могу с этим поделать
- Я тестировал все это, используя простой интерфейс OOM или Redemptions Folder.
Любые идеи?
(Проверено в Outlook 2016)