Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отправка мыла , кодировки [D6, Win2k, WinXP]


ShuraKh ©   (2002-08-22 13:40:00) 

Значится требуется отправить мыло без вложения...
При этом хочется:
CharSet: koi8-r
ContentTransferEncoding: base64
text/plain


Было испытано 2 варианта.
1. компонент TNMSMTP
koi8-r в заголовок кладет а сам текст идет в исходной кодировке
в base64 кодировать не умеет.
2.IIdSMTP и TIdMessage
позволяет указать base64 но,
создает заголовок вида (отрывок):

Subject: =?ISO-8859-1?Q?=C2=FB =E2=EA=EB=FE=F7=E5=ED=FB =E2
=F1=EF=E8=F1=EE=EA =F0?=
=?ISO-8859-1?Q?=E0=F1=F1=FB=EB=EA=E8?=
To: xxx@xxx.ru
Content-Type: text/plain;koi8-r
Content-Transfer-Encoding: base64


при этом боди пустой.

Есть подозрение что надо хитро устанавливать проперть NoDecode...

Заранее спасибо!


NBLR   (2002-08-27 14:18:00) [1]

Для компонента NMSmtp и перекодировки Body я использую следующий нехитрый код:

//процедурка для перевода из Win1251 в Koi8-r
function TForm1.KOI8Encode(TempString:string):string;
var f,g:Integer;
KOI8Symb:string;
Win1251Symb:string;
begin
Win1251Symb:="АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя";
KOI8Symb:="бвчзде?цъйклмнопртуфхжигюыэящшьасБВЧЗДЕ?ЦЪЙКЛМНОПРТУФХЖИГЮЫЭЯЩШЬАС";
for f:=0 to Length(TempString) do
for g:=0 to 66 do
begin
if (TempString[f]=Win1251Symb[g])then begin TempString[f]:=KOI8Symb[g];break;end;
end;
result:=TempString;
end;

И все вроде бы в порядке, но вот заголовки...
Дело в том, что NOVELL`овский почтовик на той стороне почему-то пишет каракули даже вместо перекодированных заголовков, хотя сам
текст body читается нормально.
Попробовал поставить в поля From и Subject строку
"=?koi8-r?B?=" перед самим текстом-заголовки стали читабельны, но
зато и вышеупомянутый фрагмент тоже виден... На мой взгляд это выход, если удастся скрыть его. Но как его скрыть?...


Наверх

Титульная страница Поиск, карта сайта Написать письмо