Получить адрес электронной почты для SentOnBehalfOfName в VSTO-коде outlook 2007 - PullRequest
0 голосов
/ 03 ноября 2018

Я разрабатываю надстройку Outlook 2007 VSTO. Мне нужно получить адрес электронной почты, указанный в разделе, как указано ниже:

info@xyz.com; от имени; KANxyz SAXYZ [saxyz7@gmail.com] enter image description here

Мне нужно получить [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){ }
...