Я пытаюсь сгенерировать новые MailItems из существующего, который в настоящее время редактируется. Пользователь вводит содержимое своей электронной почты (currentMailItem в следующем коде), нажимает кнопку, и группа MailItems генерируется с использованием currentMailItem в качестве шаблона.
Работает нормально, за исключением встроенных изображений: подпись, изображения, вставленные с помощью команды Вставить, они не отображаются в сгенерированных письмах («Связанное изображение не может быть отображено ...»). Поэтому я пытаюсь получить изображения, присоединить их к новым MailItems и заново связать их.
Я получаю mailItem с:
Outlook.MailItem currentMailItem = Application.ActiveInspector().CurrentItem;
Затем я зацикливаю вложения (я делаю это в любом случае, чтобы скопировать фактические вложения в сгенерированные письма)
foreach (Attachment attachment in currentMailItem.Attachments)
{
var tempFile = "...";
attachment.SaveAsFile(tempFile);
}
И вот тогда происходят некоторые странные вещи, используя простейшую возможную ситуацию: письмо, содержащее одну короткую строку, и подпись с изображением.
При первом запуске функции вложения полностью пусты, следа изображения подписи нет.
Если я снова запускаю функцию, на этот раз есть одно вложение, только я получаю исключение при попытке сохранить вложение:
System.Runtime.InteropServices.COMException: «Невозможно сохранить вложение. Невозможно добавить вложение; источник данных не предоставлен. '
И еще более странно, один раз и только один раз, хотя я и запускал этот код тысячу раз, мне действительно удалось сохранить вложение, которое, как и ожидалось, было изображением подписи.
На данный момент я открыт для любого указателя ...
Спасибо!