Генерируйте электронную почту HTML со встроенными изображениями в Delphi

Возможно, это работало бы:

Удаляют двойные обратные косые черты из параметра метода разделения:

split = docStr.split("\n");
5
задан David Taylor 14 October 2009 в 22:05
поделиться

4 ответа

Прочтите следующие статьи на веб-сайте Indy, они объясняют, как правильно заполнить TIdMesaage для HTML:

Сообщения HTML

Новый класс построителя сообщений HTML

10
ответ дан 13 December 2019 в 05:37
поделиться

В наши дни я использую почтовый клиент Clever Component, хотя и не бесплатный.

Элементы управления TurboPower Internet (OpenSource) отлично работали у меня в прошлом.

1
ответ дан 13 December 2019 в 05:37
поделиться

Мы пробовали это много лет назад с Indy и встроенным cid: изображениями вроде этого: https://forums.codegear.com/thread.jspa?threadID=17473

У нас так и не получилось стабильно, каждый раз, когда отказывался другой почтовый ридер (если он работал в Outlook, то Thunderbird не работал. не принимаю его, ни Outlook Express, ни т. д. и т. д.).

В конце концов, мы сделали это с .NET, используя AspNetEmail , и это сработало как шарм.

- Иерун

0
ответ дан 13 December 2019 в 05:37
поделиться

Все зависит от того, сколько различных удаленных почтовых клиентов вы должны поддерживать. Я считаю, что хорошо известные библиотеки Delphi, поддерживающие SMTP / Mime, вполне могут справиться с этой задачей, но они могут оставить вас с проблемами поддержки, когда один из ваших почтовых пользователей обнаружит, что их получатель не может видеть правильно отформатированное электронное письмо.

Я рекомендую посетить сайт Джейкоба Палме , который даст вам представление о некоторых проблемах, с которыми вы можете столкнуться. Возможно, он немного устарел, но в целом, как бы вы ни создавали и не отправляли свое сложное электронное письмо MIME, вы столкнетесь с одним или несколькими почтовыми клиентами, которые не могут правильно обрабатывать синтаксис. На сайте также есть ссылки на несколько полезных примеров конструкций, которые вы можете изучить и протестировать.

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

0
ответ дан 13 December 2019 в 05:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: