Как получить адреса электронной почты из списка рассылки в outlook с помощью VSTO - PullRequest
0 голосов
/ 08 января 2019

Я написал этот фрагмент кода, чтобы получить адреса электронной почты пользователей из строк to, cc и bcc при нажатии кнопки отправки электронной почты.

if (Item is Outlook.MailItem)
        {      
            Outlook.MailItem mailItem = Item as Outlook.MailItem;
            Outlook.Recipients myRecipients = mailItem.Recipients;
            foreach (Outlook.Recipient recipient in myRecipients)
            {  
                addresses.Add(recipient.Address);
            }
        }

Код делает то, что мне нужно. Однако, если пользователь вводит список рассылки в строки to, cc или bcc, моя программа не может прочитать адреса электронной почты из списка рассылки. Я ищу решение для чтения адресов электронной почты из списка рассылки или расширения списка рассылки.

1 Ответ

0 голосов
/ 08 января 2019

Вы можете вызвать ResolveAll() метод Recipients или Resovle() для каждого Recipient. После разрешения всех адресов получить ExchangeDistributionList объект через GetExchangeDistributionList(), который предоставляет метод GetMemberOfList(), который, в свою очередь, возвращает AddressEntries объект.

...