![]() |
|
Модераторы: Snowy, Poseidon, MetalFan |
![]()
|
|
| hawkins |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 8.9.2003 Репутация: нет Всего: нет |
В indy10 есть пример почтового клиента MailClient. Проблема с отправкой письма с помощью TIdSMTP с русскими буквами в теме.
Пробовал отправлять на разные почтовые сервисы, с содержимым на русском все нормально, а вот тема везде нечитаемыми символами отображается. Попробовал посмотреть под снифером, заголовок темы кодируется в KOI8, вот что в снифер показывает: Subject: =?KOI8-R?B?z/Du4uXw6uA5?=\r\n Как бы отучить инди кодировать тему, чтоб без KOI8 ? Смотрел пример клиента из indy9 там тоже, только кодировка другая какая-то. |
|||
|
||||
| WaReZMEN |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 683 Регистрация: 9.6.2006 Где: Россия, Санкт-Пет ербург Репутация: нет Всего: 3 |
||||
|
||||
| hawkins |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 8.9.2003 Репутация: нет Всего: нет |
не а, мне не помогло. Да я уже пытался выставлять кодировку Windows-1251 и в CharSet и в
ContentType и с UTF-8 то же пробовал - без результатно. Причем у меня с самим содержимым проблем нет, тоько с заголовком темы. Вообще как-то странно что этот глюк у нас по разному проявляется, код приблизительно такой же. Видимо от версии индей зависит. А может и не глюк. Слушай, а ты не мог бы свой исходник скинуть, а я проверю может правда дело в версии индей ? |
|||
|
||||
| Matematik |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1027 Регистрация: 11.3.2006 Репутация: 24 Всего: 50 |
> Subject: =?KOI8-R?B?z/Du4uXw6uA5?=\r\n
Тема в кодировке KOI8-R и закодировано алгоритмом Base64 (см. буковка ?B?) Нормальные почтовики отображают абракадабру, потому что "z/Du4uXw6uA5" текст закодированый base64 и в кодировке windows-1251 Поменяешь на "=?Windows-1251?B?z/Du4uXw6uA5?=" будет показывать по-русски В Indy9 кодируется легко
|
|||
|
||||
| hawkins |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 8.9.2003 Репутация: нет Всего: нет |
Matematik,
спасибо, надо попробовать этот способ, хотя я другой выход нашел уже. Перед отправкой тему оставляю пустой, а потом через ExtraHeaders добавляю заголовок темы вручную, то есть в коде получается приблизительно так:
ExtraHeaders - пользовательские заголовки |
|||
|
||||
| hawkins |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 8.9.2003 Репутация: нет Всего: нет |
Покопался в методе TIdMessage.GenerateHeader , проблема действительно была в кодировке KOI8-R, а чтобы ее поменять на windows-1251, надо в событии TIdMessage.OnInitializeISO поменять кодировку:
а чтоб вообще не кодировал заголовки в BASE64 вроде надо написать VHeaderEncoding:='8', но не проверял |
|||
|
||||
![]()
|
| Правила форума "Delphi: Сети" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |