Я разрабатываю надстройку Outlook 2007 VSTO. Мне нужно получить адрес электронной почты, указанный в разделе, как указано ниже:
info@xyz.com; от имени; KANxyz SAXYZ [saxyz7@gmail.com]
Мне нужно получить [saxyz7@gmail.com] в коде. Но я просто получаю SentOnBehalfOfName свойство, которое возвращает только имя (в данном случае «KANxyz SAXYZ»).
try
{
Outlook.Selection objSelection = null;
// Get the Application object
Microsoft.Office.Interop.Outlook.Application application = Globals.ThisAddIn.Application;
try
{
var window = application.ActiveWindow();
try
{
objSelection = application.ActiveExplorer().Selection;
}
catch (System.Exception ex)
{
//Ignore; NULL check below will branch out
}
objMail = default(Outlook.MailItem);
try
{
objMail = objSelection[1];
}
catch (Exception ex)
{
}
if ((objMail != null) && !string.IsNullOrEmpty(objMail.SenderEmailAddress))
{
email = objMail.SenderEmailAddress;
emailFrom = objMail.SentOnBehalfOfName;
}
}
catch { }
if ((objMail == null) || string.IsNullOrEmpty(objMail.SenderEmailAddress))
{
// Get the active Inspector object and check if is type of MailItem
Microsoft.Office.Interop.Outlook.Inspector inspector = application.ActiveInspector();
if (inspector != null)
{
mailItem = inspector.CurrentItem as Microsoft.Office.Interop.Outlook.MailItem;
if (mailItem != null)
{
email = mailItem.SenderEmailAddress;
emailFrom = objMail.SentOnBehalfOfName;
}
}
}
}
catch (Exception ex){ }