Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2009.04.05;
Скачать: [xml.tar.bz2];

Вниз

Кодировка темы сообщения и поля " Отправитель"   Найти похожие ветки 

 
Yurij-7   (2008-01-29 17:29) [0]

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


Form1.IdMessage1.Body.Clear;
 Form1.IdMessage1.ClearBody;
 Form1.IdMessage1.Clear;
 Form1.IdMessage1.ClearHeader;

 Form1.IdMessage1.CharSet := "windows-1251";
//Form1.IdMessage1.ContentType := "mime";
 Form1.IdMessage1.ContentType := "text/html; charset=windows-1251";
 //Form1.IdMessage1.ContentTransferEncoding := "quoted-printable";
 Form1.IdMessage1.ContentTransferEncoding := "8bit";


 
umbra ©   (2008-01-29 17:40) [1]

а где зжесь тема и отправитель?

uses ..., IdEncoderMIME, ....;
{......................}
Form1.IdMessage1.Subject := "=?windows-1251?B?" + TIdEncoderMIME.EncodeString ("вот моя тема") + "<>?=";


Точно так же с отправителем.


 
Yurij-7   (2008-01-29 17:42) [2]

когда подключаю IdEncoderMIME, пишет что нет файла IdEncoderMIME.dcu

первый раз работаю с ИНди, ничего не могу понять.


 
clickmaker ©   (2008-01-29 17:56) [3]

IdCoderMIME.pas?


 
Yurij-7   (2008-01-29 18:00) [4]

да, такого файлика у меня нету ((


 
Anatoly Podgoretsky ©   (2008-01-29 18:48) [5]

> Yurij-7  (29.01.2008 18:00:04)  [4]

Инди они разные бывают и каждый раз революция.
А ты сделал поиск по вхождению?


 
Yurij-7   (2008-01-29 19:14) [6]

да. и всеравно ничего не находит (


 
umbra ©   (2008-01-30 10:52) [7]


> IdCoderMIME.pas

этот модуль есть и в инди 9 и в 10


 
Плохиш ©   (2008-01-30 10:56) [8]


> Yurij-7   (29.01.08 17:29)  
> Уважаемые мастера, прошу помочь разобраться почему при отправке
> сообщения, тема и поле отправитель приходят в виде крякозябликов

Осмелюсь предположить, что у клиента по-умолчанию стоит кодировка отличная от русской...


 
Yurij-7   (2008-01-30 17:20) [9]

нет, кодировочка как раз "windows-1251"
а когда на английском пишу тему то все ок получается ...


 
Dennis I. Komarov ©   (2008-01-30 17:25) [10]

> [9] Yurij-7   (30.01.08 17:20)

А знаешь что такое "B?" и зачем оно там?


 
Yurij-7   (2008-01-30 17:30) [11]

чесно сказать не вкурсе ...
подскажите пож.


 
Dennis I. Komarov ©   (2008-01-30 17:33) [12]

Сперва покажи то, на что жалуешся, а то мы этого так и не увидели


 
Yurij-7   (2008-01-30 17:38) [13]

Ну это обычные черные палочки в поле отправитель и тема, это даже символом нельзя назвать


 
Dennis I. Komarov ©   (2008-01-30 17:43) [14]

А header посмотреть? rfc 822 говорит о чем?


 
Yurij-7   (2008-01-30 18:00) [15]

это в пришедшем письме ?


 
Dennis I. Komarov ©   (2008-01-30 18:03) [16]

Есть функция EncodeString в модуле EncdDecd. Можешь ее прикрутить к [1]


 
Dennis I. Komarov ©   (2008-01-30 18:05) [17]

> [15] Yurij-7   (30.01.08 18:00)

Письмо это структурированный текст. Не плохо было бы разобраться в нем.

Subject: [Subjecct text]
From: [Sender]


 
Yurij-7   (2008-01-30 18:09) [18]

сделал так Form1.IdMessage1.Subject := EncodeString ("Открытие");
и пришло вот такое : zvLq8Pvy6OUg6Oft5fHgICLP5fDx7u3g6/zt7uPuIOrw5eTo8u7i4O3o/yI=


 
umbra ©   (2008-01-30 18:14) [19]


> и пришло вот такое : zvLq8Pvy6OUg6Oft5fHgICLP5fDx7u3g6/zt7uPuIOrw5eTo8u7i4O3o/yI=
>

Все правильно Просто надо после приема сделать DecodeString


 
Yurij-7   (2008-01-30 18:15) [20]

а как же это сделать если у каждого пользователя свой почтовый клиент, я батом пользуюсь, а ктото Аутглюком :)


 
umbra ©   (2008-01-30 18:16) [21]


> сделал так Form1.IdMessage1.Subject := EncodeString ("Открытие");
>
> и пришло вот такое : zvLq8Pvy6OUg6Oft5fHgICLP5fDx7u3g6/zt7uPuIOrw5eTo8u7i4O3o/yI=
>

а, не досмотрел. Я ж вам в [1] писал, что надо присваивать.


 
Yurij-7   (2008-01-30 18:20) [22]

у меня наверное инди какойто не такой, у меня нет модуля IdEncoderMIME (((((


 
Dennis I. Komarov ©   (2008-01-30 18:23) [23]

> [22] Yurij-7   (30.01.08 18:20)

Конечно не такой :)
Ты не понимаешь что делает EncodeString и зачем


 
umbra ©   (2008-01-30 18:26) [24]

uses ..., EncdDecd, ....;
{......................}
Form1.IdMessage1.Subject := "=?windows-1251?B?" + EncodeString ("вот моя тема") + "<>?=";


 
Dennis I. Komarov ©   (2008-01-30 18:27) [25]

> [24] umbra ©   (30.01.08 18:26)

А зачем "<>"


 
Yurij-7   (2008-01-30 18:33) [26]

супер, убрал "<>"  и все вышло
огромное спасибо за помощь, чесно, очень признателен !
в примерах все так красиво пишут но когда берешь практику выход все не так :)))


 
Yurij-7   (2008-01-30 18:36) [27]

если не трудно то подскажите еще такой момент
делаю так
Form1.IdMessage1.ContentType := "text/html; charset=windows-1251";

но когда в атач прикладываю 2 рисунка или текстовика и 1 htm файл, то он по умолчанию не открываеться в почтовом клиенте, надо самому открывать, а как сделать что бы сообщение было в виде вэбстранички ?


 
Dennis I. Komarov ©   (2008-01-30 18:41) [28]

> [27] Yurij-7   (30.01.08 18:36)

Content-Type: multipart/mixed; boundary="--NextPart--"

This is a multi-part message in MIME format.

--NextPart--
Content-Type: application/octet-stream;
name="test.ext"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="test.ext"

UEsDBBQAAgAIABBolyo7/YSyEwkAAMIgAAAIAAAAZGF0YS5odG2tWltv21YSfk6B/odZF7tIC114
l+UjE3AduzZgr4VEQFvAL7rQFhFa1FJ03GyRX7Q/YV+ybR+KdIM2QRbbl2IZWbRlXWiKarIb2IU6
...

изучай RFC


 
umbra ©   (2008-01-30 18:46) [29]


> А зачем "<>"
>

это ошибка в днк :)


 
Yurij-7   (2008-01-30 18:49) [30]

ну насколько я понял то отправитель и тема сообщения это в одной части сообщения и кодируются одним способом, а атачмент это другая часть сообщения и надо кодировать другой кодировкой ?


 
Anatoly Podgoretsky ©   (2008-01-30 19:17) [31]

> Yurij-7  (30.01.2008 18:49:30)  [30]

Без RFC тебе удачи не видать, будешь тыкаться в потемках и даже не понимать ответов и кода.


 
Yurij-7   (2008-01-30 19:40) [32]

ок, спасибо, буду изучать


 
umbra ©   (2008-01-30 23:05) [33]


> но когда в атач прикладываю 2 рисунка или текстовика и 1
> htm файл, то он по умолчанию не открываеться в почтовом
> клиенте, надо самому открывать, а как сделать что бы сообщение
> было в виде вэбстранички ?
>

именно это подробно описано в рфц 1872. Там и примеры есть.


 
Anatoly Podgoretsky ©   (2008-01-31 09:17) [34]


> но когда в атач прикладываю 2 рисунка или текстовика и 1
> htm файл, то он по умолчанию не открываеться в почтовом
> клиенте, надо самому открывать, а как сделать что бы сообщение
> было в виде вэбстранички ?

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

Читай RFC, иначе так и останешься дураком.
RFC это честь, ум и совесть программиста.


 
Yurij-7   (2008-01-31 20:48) [35]

:) спасибо
буду изучить



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2009.04.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.007 c
2-1235036092
Andrey K
2009-02-19 12:34
2009.04.05
Положить на форму рисунок, чтобы фон был прозрачным


15-1233787788
Германн
2009-02-05 01:49
2009.04.05
Телефон, телефонный кабель и RJ разъём


2-1234290981
Denied
2009-02-10 21:36
2009.04.05
Запуск из сервиса на активном Desktop с правами администратора


2-1235034304
Alex_Y
2009-02-19 12:05
2009.04.05
gtringgrid запретить редактирование ячейки


2-1235032488
opolo2000
2009-02-19 11:34
2009.04.05
высота компонентов на TQRBand





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский