У меня есть надстройка VSTO Outlook 2007. Я пытаюсь получить адрес электронной почты отправителя, когда новое письмо приходит в папку "Входящие".
Для этого я использую следующий код:
void inboxItems_ItemAdd(object Item)
{
Outlook.MailItem mailItem = Item as Outlook.MailItem;
if (mailItem != null)
string emailAdress = mailItem.SenderEmailAddress;
}
Проблема в том, что когда письмо приходит из одного домена, emailAdress содержит LDAP адрес, например
/O=FIRST ORGANIZATION/OU=FIRST ADMINISTRATIVE GROUP/CN=RECIPIENTS/CN=ADMINISTRATOR
в то время как я хочу получить SMTP адрес, например
administrator@orgname.com
Мой вопрос в том, как получить SMTP адрес отправителя письма из внутреннего домена?
P. S.
В Outlook 2010 эта проблема может быть решена с помощью свойства Sender. Но в 2007 это не поддерживается.
item.Sender.GetExchangeUser().PrimarySmtpAddress