-
Напиши вот так и все у тебя будет суппер!
Try
idSMTP1.Send(IdMessage1);
Except
if GetLastError=0 then ShowMEssage(' Письмо успешно отправлено "'+IdMessage1.Recipients.EMailAddresses+'"')
else ShowMEssage('Возникла ошибка при отправке письма: ('+ inttostr(GetLastError) +') '+ SysErrorMessage(GetLastError));
end;
-
> Напиши вот так и все у тебя будет суппер
Никакого "суппера" не будет.
Грабли вместо него будут.
-
Такой вопрос. Мне надо отправить несколько писем со вложениями.
И вот я создал нужные вложения:
TIdAttachment.Create(idMessage1.MessageParts, FileName);
TIdAttachment.Create(idMessage1.MessageParts, FileName);
...
TIdAttachment.Create(idMessage1.MessageParts, FileName);
отправил. Все в порядке.
НО теперь мне надо отправить следующее письмо, где число вложений меньше. Как корректно удалить лишние вложения? Подскажите, пожалуйста.
-
Пройтись в for..downto - цикле по списку idMessage1.MessageParts, проверяя каждый элемент на принадлежность типу TIdAttachment. В случае принадлежности проанализировать нужно ли оно, и если не нужно - удалить из списка.
-
Сергей М - Спасибо! Получилось!
-
Новая проблема. Если имя файла вложения содержит русские буквы, то возникает проблема. Причем я пробовал на BATe, он понимает нормально, но у клиентов Outlook и русские буквы там отражаются крякозябрами. Русская кодировка там не устанавливается, несмотря на явное ее задание в свойствах.
Как можно это поправить? Delphi6 Indy 8
-
Никаких проблем с русскими буквами не возникает, если они составлены в соответствии с MIME - =?codepage?pack?filename?=
А Инди очень старый, вряд ли кто его еще помнит.
-
Вот вопрос в том и состоит, как заставить Indy правильно составлять имена.
И надеюсь на людей с хорошей памятью. ;)
-
> foxm66 © (18.12.09 10:32) [27]
Что мешает обновиться хотя бы до 9-ки, а еще лучше до 10-ки ?
-
>Сергей М.
А Вы уверены, что это решит проблему?
На другом форуме я нашел вот такое обсуждение:
От: vpavel
Дата: 05.03.07 08:23
Здравствуйте
При аттачменте в кодировке koi8-r название файла приходит в аброкозябрах.
Просмотрел форум, эта тема уже подымалась, но ответа не нашел.
Использую компонент IdSmtp Indy9 Delphi
От: Vodyamba
Дата: 06.03.07 03:58
Да уж... Ответ и я в своё время так и не нашел... На Indy 10... пришлось прикреплять аттачменты только с английским наименованием...
ТоО есть, мне надо найти 10-ю Indy, установить (а она встанет на Delphi 6?), а гарантии работы, получается, нет?