Получение электронного адреса получателя
В этом примере показан способ получения SMTP-адреса получателя.
Пример
В следующем примере кода метод GetSMTPAddressForRecipients принимает в качестве аргумента ввода объект MailItem, а затем показывает SMTP-адрес каждого получателя этого почтового элемента. Метод сначала извлекает коллекцию Recipients, которая представляет набор получателей, указанный для почтового элемента. Затем метод получает для каждого Recipient в коллекции Recipients объект PropertyAccessor , который соответствует объекту Recipient. Наконец, метод использует свойство PropertyAccessor для получения значения свойства https://schemas.microsoft.com/mapi/proptag/0x39FE001E
MAPI , которое сопоставляется со свойством 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);
}
}