![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Как получить прикрепление (аттачмент) к сообщению в Indy с помощью IdIMAP4? Как я понимаю, примерно так:
Код:
var
boxes: TStringList;
msg: TIdMessage;
UID: string;
begin
boxes := TStringList.Create;
msg := TIdMessage.Create;
imap.Connect;
imap.ListMailBoxes(boxes);
imap.SelectMailBox(boxes[0]);
imap.GetUID(1, UID);
imap.UIDRetrieve(UID, msg);
{А что теперь? Как получить аттач в поток/файл?}
imap.Disconnect; |
|
#2
|
|||
|
|||
|
Неужели никто не знает?!
![]() |
|
#4
|
|||
|
|||
|
Нет, не смотрел. Спасибо!
|
|
#5
|
|||
|
|||
|
Посмотрел. Там нет того, что нужно. Мы получили сообщение (т.е. мы адресант). Теперь как из него выдрать аттачмент, т.е. файл, который приложил адресат?
|
|
#6
|
|||
|
|||
|
поищите на форуме, я помню что 100% был такой вопрос, и потом автор вопроса выкладывал готовое решение с вложениям, вот название темы только не помню
![]() |
|
#7
|
|||
|
|||
|
Разобрался! Надо использовать полиформизм (TIdMessagePart -> TIdAttachment -> TIdAttachmentFile). Надо воспользоваться свойством TIdAttachmentFile.StoredPathName:
Код:
(IdMessage1.MessageParts[0] as TIdAttachmentFile).StoredPathFile |