2014-11-11 4 views
0

Я разрабатываю Outlook 2013 Addin.Ошибка при получении сообщения не найден. (Исключение из HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))

Мой сценарий:

  1. Получить данные по почте выбранной электронной почты из почтового окна прогноз

  2. Создать новый пункт e-mail

  3. Update новый элемент электронной почты с данными электронной почты из выбранной электронной почты

  4. Отправить email

Если я выбираю электронную почту без вложений и выполняю операцию, тогда она работает нормально.

Но если выбранный адрес электронной почты имеет вложения, то я получаю сообщение Участник не найден. (Исключение из HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND))

Чтобы получить выбранные данные по электронной почте, я использую ниже код

MailItem mailItem = null; 
Attachments mtAttachments = null; 

Explorer explorer = Globals.ThisAddIn.Application.ActiveExplorer(); 

if (explorer != null && explorer.Selection != null && explorer.Selection.Count > 0) 
      { 
       object item = explorer.Selection[1]; 
       if (item is MailItem) 
       { 
        mailItem = item as MailItem; 
        subject = mailItem.Subject; 
        body = mailItem.HTMLBody; 
        mtAttachments = mailItem.Attachments; 
       } 
      }  

Для отправки нового сообщения электронной почты с вложениями Я использую ниже код.

enter image description here

И я получаю ошибку ниже.

enter image description here

Может ли один помочь мне.?

ответ

1

Attachments.Add может принимать только строку с именем файла или другим элементом Outlook (MailItem, XContactItem и т. Д.). Он не принимает экземпляр объекта Attachments в качестве аргумента.

Если вы хотите скопировать вложения из одного сообщения в другое, сначала сохраните его как файлы, а затем передайте имя файла вложения в качестве параметра.