Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Получение почты в Delphi [D7, XP]


Страницы:   1 2 3 4

DimOk ©   (2007-08-27 12:23:00) 

Добрый день всем. Хочу поинтересоваться, как можно сохранить прикрепленные файлы к письму.
procedure TForm1.Button1Click(Sender: TObject);
var MyMessage:  TIdMessage;
   CountMessages: Integer;
   attach: TIDAttachment;
begin
MyMessage := TIdMessage.Create(nil);
IdPOP31.Connect();
CountMessages := IdPOP31.CheckMessages();
while CountMessages > 0 do begin
if IdPOP31.Retrieve(CountMessages,MyMessage) = True then begin
   RichEdit1.Lines.Assign(MyMessage.Body);
   attach := TIDAttachment.Create(MyMessage.MessageParts);
   //А дальше я не знаю что делать (касательно прикрепленных файлов)
  //attach.SaveToFile(const FileName: TFeliName): Boolean - как работает эта функция в хелпе нет ни каких данных и примеров по indy компонентам.
end;
CountMessages := CountMessages - 1;
end;
ShowMessage(IntToStr(IdPOP31.CheckMessages()));
MyMessage.Free;
IdPOP31.Disconnect;
end;


Anatoly Podgoretsky   (2007-08-28 11:28:00) [21]


> > Как и предполагалось - обманывал нас.
>
> Только вот имя файла не совсем на русском языке - отсюда
> и ошибка при сохранении (я так думаю)

Ты не здесь обманывал, речи о сохранение и быть не могло, у тебя даже программа не компилировалась!


DimOk   (2007-08-28 11:26:00) [22]


> полный бред. такого быть не может.

Сейчас дословно напишу


umbra   (2007-08-28 11:24:00) [23]


> r?B?09fJztjJLnJ0Zg.zip

полный бред. такого быть не может.


DimOk   (2007-08-28 11:21:00) [24]


> что-то не верится. Показывает или все или ничего.

В отладчекн в Вач Виндов MyMessage.MessageParts.Items[i]).FileName Value = вот типо этого r?B?09fJztjJLnJ0Zg.zip


umbra   (2007-08-28 11:19:00) [25]


> только расширение правильно показывает

что-то не верится. Показывает или все или ничего.


DimOk   (2007-08-28 11:16:00) [26]


> что-то наподобие этого:
> =?koi8-r?B?09fJztjJLnJ0Zg==?=

Да. только расширение правильно показывает :)


umbra   (2007-08-28 11:15:00) [27]


> Только вот имя файла не совсем на русском языке

что-то наподобие этого:
=?koi8-r?B?09fJztjJLnJ0Zg==?=


DimOk   (2007-08-28 11:13:00) [28]


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

Да вы правы, сейчас попробовал - не сохраняет пишет eerror saving attachment.
Но как быть с русскими названиями файлов - AttacmentEncoding...? Или что то другое?


DimOk   (2007-08-28 11:07:00) [29]


> Только вот имя файла не совсем на русском языке - отсюда
> и ошибка при сохранении (я так думаю)

Да. С англ. названиями все просто замечательно, а вот русские имена не сохраняет.


DimOk   (2007-08-28 11:02:00) [30]


> Как и предполагалось - обманывал нас.

Только вот имя файла не совсем на русском языке - отсюда и ошибка при сохранении (я так думаю)


DimOk   (2007-08-28 11:00:00) [31]


> Заблуждение

Но я все равно указываю путь куда его сохранять, а имя файла у меня состоит из кракозябр, поэтому он и не сохраняется - я так думаю, видимо проблемма в кодировке.....


Anatoly Podgoretsky   (2007-08-28 10:55:00) [32]


> Если указать только имя то в папку с проектом,

Заблуждение


Anatoly Podgoretsky   (2007-08-28 10:54:00) [33]


> Пишет - ундекларе идентифер Items[i], но после того как
> я написал:

Как и предполагалось - обманывал нас.


Anatoly Podgoretsky   (2007-08-28 10:53:00) [34]


> а если в отладчике посмотреть, чему равно FileName?

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


DimOk   (2007-08-28 10:53:00) [35]


> И куда по твоему он будет сохранять?

Если указать только имя то в папку с проектом, а можно и 'C:\бла бла бла\' + MyMessage.MessageParts.Items[i]).FileName


DimOk   (2007-08-28 10:52:00) [36]

Пишет - ундекларе идентифер Items[i], но после того как я написал:
SaveToFile(TIdAttachment( MyMessage.MessageParts.Items[i]).FileName);
Все заработало! Всем огромное спасибо!


Anatoly Podgoretsky   (2007-08-28 10:50:00) [37]

> DimOk  (28.08.2007 10:20:31)  [31]

И куда по твоему он будет сохранять?


umbra   (2007-08-28 10:45:00) [38]

а если в отладчике посмотреть, чему равно FileName?


DimOk   (2007-08-28 10:38:00) [39]

Error saving Attachment


umbra   (2007-08-28 10:33:00) [40]


> пишет что не может сохранить

что и куда? полный текст сообщения можно?


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо