Поделиться через


Получение электронного адреса получателя

В этом примере показан способ получения SMTP-адреса получателя.

Пример

В следующем примере кода метод GetSMTPAddressForRecipients принимает в качестве аргумента ввода объект MailItem, а затем показывает SMTP-адрес каждого получателя этого почтового элемента. Метод сначала извлекает коллекцию Recipients, которая представляет набор получателей, указанный для почтового элемента. Затем метод получает для каждого Recipient в коллекции Recipients объект PropertyAccessor , который соответствует объекту Recipient. Наконец, метод использует свойство PropertyAccessor для получения значения свойства https://schemas.microsoft.com/mapi/proptag/0x39FE001EMAPI , которое сопоставляется со свойством PR_SMTP_ADDRESS (PidTagSmtpAddress) получателя.

Если вы используете Visual Studio для тестирования этого примера кода, сначала добавьте ссылку на компонент Microsoft Outlook 15.0 Object Library и задайте переменную Outlook при импорте пространства имен Microsoft.Office.Interop.Outlook. Инструкция using не должна находиться непосредственно перед функциями в примере кода, но ее нужно добавить перед объявлением общедоступного класса. В следующей строке кода показано, как выполнить импорт и назначение в C#.

using Outlook = Microsoft.Office.Interop.Outlook;
private void GetSMTPAddressForRecipients(Outlook.MailItem mail)
{
    const string PR_SMTP_ADDRESS =
        "http://schemas.microsoft.com/mapi/proptag/0x39FE001E";
    Outlook.Recipients recips = mail.Recipients;
    foreach (Outlook.Recipient recip in recips)
    {
        Outlook.PropertyAccessor pa = recip.PropertyAccessor;
        string smtpAddress =
            pa.GetProperty(PR_SMTP_ADDRESS).ToString();
        Debug.WriteLine(recip.Name + " SMTP=" + smtpAddress);
    }
}

См. также