Доброго времени суток!
Сам морочился очень досго с подобной проблемой в Д2006
перерыл кучу информации и пришел к правильному решению:
Суть - нужно каждой части письма указывать в какой она кодировке должна быть.
пример :
Код:
//есть письмо
IdMessageAvto : TidMessage;
//содержимое:
MessBody : TidText;
//вложение :
Attach : TIdattachmentFile;
.......
// устанавливаем параметры письма
with IdMessageAvto do
begin
ContentType := 'multipart/mixed';
CharSet := 'windows-1251';
.................
end;
присоединяем содержимое :
MessBody := TIdText.Create(IdMessageAvto.MessageParts, nil);
MessBody.ContentType := 'text/plain; CharSet = windows-1251';
// чарсет нужно указывать именно в свойстве контенттайп по другоу не канает (проверено)
MessBody.Body.Text := ' message ';
Attach := TIdAttachmentFile.Create(IdMessageAvto.MessageParts,'D:\file.txt');