error saving attachment при работе с Indy в Lazarus

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

error saving attachment при работе с Indy в Lazarus

Сообщение AlexL » 14.08.2011 16:16:11

У меня возникла проблема при работе с Indy в Lazarus: при попытке сохранения аттачмента в файл возникает EIdException с сообщением error saving attachment.
Я пытался написать совсем простую программу (для теста), которая открывает файл *.eml и сохраняет из него аттачмент в файл. Всё работает нормально до момента сохранения аттачмента.
Для сохранения аттачмента использую код взятый из примера Indy_10_MailClient:
TIdAttachmentMemory(Msg.MessageParts.Items[intMSGIndex]).SaveToFile(filename);
Именно на этой строке возникает exception.

Я использую при разработке:
Linux - Ubuntu 10.04
Freepascal 2.4.2
Lazarus 0.9.30
Indy 10.2.0.3

Заранее благодарю за любую помощь.
AlexL
незнакомец
 
Сообщения: 2
Зарегистрирован: 14.08.2011 15:41:53

Re: error saving attachment при работе с Indy в Lazarus

Сообщение Ism » 15.08.2011 14:19:32

У меня была такая фигня, как выяснилось Indy не нравились непечатные символы в имени файла. Я лечил это обработкой filename и заменой на пробелы. Это было в windows.
Если не поможет сделайте имя файла без пробелов. И только английскими буквами.
И учтите , что в винде имена файлов в кодировке cp1251, а в Lazarus в utf8. Поэтому иногда нужно применять UTF8ToAnsi

TIdAttachmentMemory(Msg.MessageParts.Items[intMSGIndex]).SaveToFile(UTF8ToAnsi(filename));
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: error saving attachment при работе с Indy в Lazarus

Сообщение AlexL » 26.08.2011 23:29:46

Нет, с именами файлов проблем нет. Я пробовал задавать короткие имена файлов, без пробелов и только из латинских букв. Под windows не пробовал, на данный момент пишу только под Linux.
AlexL
незнакомец
 
Сообщения: 2
Зарегистрирован: 14.08.2011 15:41:53

Re: error saving attachment при работе с Indy в Lazarus

Сообщение Padre_Mortius » 27.08.2011 01:12:11

AlexL, выкладывайте тестовый пример с ошибкой
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19

Рейтинг@Mail.ru