Как получить владельца папки электронной почты, используя EWS или Outlook API - PullRequest
0 голосов
/ 19 марта 2019

У нас есть система, в которой административные помощники имеют доступ к учетным записям электронной почты своих начальников. Я пишу что-то, что будет использовать доступ к этим письмам, по папкам, за кулисами. У меня проблема с получением адреса электронной почты для выбранной папки (он работает, выбирая папку, затем активируя надстройку кнопкой - надстройка затем обрабатывает электронные письма в этой папке).

Это прекрасно работает, если папка принадлежит текущему пользователю, этот адрес легко найти. Однако, если пользователь выбирает папку, которая НЕ находится в его почтовом ящике, я не могу понять, как получить то, К какому электронному письму оно относится, для последующего поиска. Я могу получить магазин, но отображаемое имя магазина - «LastName, FirstName», что не помогает.

1 Ответ

0 голосов
/ 20 марта 2019

Если магазин находится в сети, вы можете прочитать свойство PR_MAILBOX_OWNER_ENTRYID (имя DASL http://schemas.microsoft.com/mapi/proptag/0x661B0102), используя Store.PropertyAccessor.GetProperty.

Если нет, вы можете проанализировать идентификатор записи магазина - он встраивает EX-адрес владельца.Затем вы можете использовать этот EX-адрес для создания идентификатора GAL-записи и использовать его для открытия AddressEntry с использованием Namespace.GetAddressEntryFromID.

Если использование Redemption является опцией, его объект RDOExchangeMailboxStore предоставляетсвойство Owner (возвращает RDOAddressEntry объект).

...