![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Доброго времени суток!
Этот вопрос уже обсуждался не раз: http://www.delphisources.ru/forum/sh...E8%F1%FC%EC%E0 http://www.delphisources.ru/forum/sh...E8%F1%FC%EC%E0 http://www.delphisources.ru/forum/sh...highlight=smtp но ответа я так и не нашёл. Пытаюсь сам отправить письмо вот код: Код:
frmMain.idSMTP.Host := frmMain.txtSMTPServer.Text;
frmMain.idSMTP.Port := 2525;
frmMain.idSMTP.Username := frmMain.txtLogin.Text;
frmMain.idSMTP.Password := frmMain.txtPassword.Text;
//frmMain.idSMTP.AuthType := atDefault;
MMessage := TIdMessage.Create;
MMessage.CharSet := 'Windows-1251';
MMessage.ContentType := 'text/plain; charset="windows-1251';
MMessage.From.Address := 'pochta@mail.ru';
MMessage.Recipients.EMailAddresses := frmMain.txtWho.Text;
MMessage.Subject := frmMain.txtSubject.Text;
MMessage.Body.Text := frmMain.memText.Text;
//отправка
try
frmMain.idSMTP.Connect;
//rmMain.idSMTP.IOHandler.DefStringEncoding := enANSI;
frmMain.idSMTP.Send(MMessage);
if frmMain.idSMTP.Connected then frmMain.idSMTP.Disconnect;
Application.MessageBox('Письмо отправлено', 'Сообщение', 0);
except
Application.MessageBox('Ошибка отправки', 'Сообщение', 0);
frmMain.idSMTP.Disconnect;
end;письмо уходит и приходит без проблем, но кириллица в теме и в теле письма знаками вопросов. Так как это можно поправить? Если нельзя, то кто как отправляет письма из delphi 2009? |
|
#2
|
|||
|
|||
|
Попробуй перед тем, как запихивать текст в соответсвующие свойства, конвертнуть его в AnsiString в нужной кодировке.
|
|
#3
|
|||
|
|||
|
Это как?
Так: Код:
type // Кодовая страница для ANSI-кириллицы - 1251 CyrillicString = type Ansistring(1251); var t: CyrillicString; ... ... ... t:= 'тема'; MMessage.Subject := t; Последний раз редактировалось EraM, 26.06.2009 в 09:29. |