Могу ли я прикрепить изображение из буфера обмена? - PullRequest
0 голосов
/ 12 ноября 2009

У меня есть функция, которая отвечает за создание электронной почты Outlook с соответствующей информацией. Тем не менее, я хочу прикрепить изображение из буфера обмена. Я уже могу определить, есть ли изображение в буфере обмена, и использовать элемент управления графическим блоком для его отображения.

IDataObject data = Clipboard.GetDataObject();
Image img = (Image)data.GetData(DataFormats.Bitmap, true);

Итак, теперь я могу получить изображение из буфера обмена (я не показывал, чтобы проверить, существует изображение или нет). С объектом изображения можно ли прикрепить его к электронной почте Outlook? Из API это просто показывает, что первый параметр Attachment.Add - Источник объекта .

Ошибка, которую я получаю при непосредственном использовании объекта изображения:

mailItem.Attachments.Add(img, Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);

is System.Runtime.InteropServices.COMException (0x80010105): сервер выдал исключение. (Исключение из HRESULT: 0x80010105) RPC_E_SERVERFAULT))

Спасибо.

1 Ответ

2 голосов
/ 12 ноября 2009

Сначала сохраните изображение на диск.

Метод добавления (коллекция вложений)

Синтаксис

objAttachments.Add (Source, [Type], [Position], [DisplayName])

objAttachments Обязательно. выражение, которое возвращает вложения объект коллекции.

Источник Требуется Вариант. Файл (представлен полным путем и файлом имя) или предмет, который составляет крепление.

...