Текущий архив: 2011.07.17;
Скачать: CL | DM;
Вниз
Заголовок в Indy корявый Найти похожие ветки
← →
ddd329 (2011-04-06 15:22) [0]Отправляю письмо в Indy(Delphi 7), тело имеет нормальную кодировку, а вот заголовок нет, посмотрел похожие темы форума ничего толкого не нашел!
Вот пример:
class function TForm_Make_Email.Send_Email_2(fp_Senser, fp_Receiver,
fp_Tema, fp_Email, fp_Path_File, fp_Login, fp_Password: string): boolean;
var
IdAttachment1:TIdAttachment;
begin
DataModule1.IdMessage1.Subject:=fp_Tema;//в электронной почте русские буквы будут неправильными
DataModule1.IdMessage1.Body.Text:=fp_Email;
DataModule1.IdMessage1.From.Text:= fp_Senser;
DataModule1.IdMessage1.Recipients.Add.Text:=fp_Senser;
//SysUtils.SysLocale.PriLangID := LANG_RUSSIAN;
//IdMessage1.CharSet:="windows-1251";
if fp_Path_File<>"" then IdAttachment1:=TIdAttachment.Create(DataModule1.IdMessage1.MessageParts,fp_Path_ File);
DataModule1.IdSMTP1.AuthenticationType := atLogin;
DataModule1.IdSMTP1.Host:=fp_Receiver;
DataModule1.IdSMTP1.Username:=fp_Login;
DataModule1.IdSMTP1.Password:=fp_Password;
try
DataModule1.IdSMTP1.Connect();
except
Result:=false;
exit;
end;
try
if DataModule1.IdSMTP1.Connected then
DataModule1.IdSMTP1.Send(DataModule1.IdMessage1);
except
Result:=false;
exit;
end;
Result:=true;
DataModule1.IdSMTP1.Disconnect;
end;
← →
Dennis I. Komarov © (2011-04-06 15:32) [1]А оно надо? (я про инди)
← →
И. Павел © (2011-04-06 15:48) [2]Рекомендую ознакомиться с этой веткой:
http://delphimaster.net/view/15-1297153035/
Проблему с заголовком, конечно, можно решить изменением кодировки, но потом пойдут проблемы с русскими именами прикрепленных файлов и т.д. Так что, ИМХО, лучше сразу перейти с Indy на что-нибудь другое.
← →
Игорь Шевченко © (2011-04-06 15:55) [3]
> Так что, ИМХО, лучше сразу перейти с Indy на что-нибудь
> другое.
Или руки выпрямить. Тоже способствует
← →
И. Павел © (2011-04-06 16:03) [4]
> Или руки выпрямить. Тоже способствует
Лично я долго мучился с ИНДИ. А альтернативные библиотеки сразу выдали нужный результат и без всяких заморочек.
> ddd329 (06.04.11 15:22)
Как вариант - можно еще попробовать обновить indy.
← →
ddd329 (2011-04-06 16:16) [5]
> Или руки выпрямить. Тоже способствует
Если кому и выпрямить, то точно не мне! Не я же писал эти компоненты!!!
> Лично я долго мучился с ИНДИ. А альтернативные библиотеки
> сразу выдали нужный результат и без всяких заморочек.
Павел можешь дать ссылку на компоненты, и пример кода как отправлять, если нетрудно?
← →
И. Павел © (2011-04-06 16:28) [6]> Павел можешь дать ссылку на компоненты, и пример кода как
> отправлять, если нетрудно?
Библиотека Synapse:
Вот их сайт: http://synapse.ararat.cz/doku.php
Вот пример:procedure THDMesForm.OkClick(Sender: TObject);
var i, FileNum: integer;
tmpMsg : TMimeMess;
tmpStringList : TStringList;
tmpMIMEPart : TMimePart;
begin
...
tmpStringList := nil;
tmpMsg := nil;
try
tmpStringList := TStringList.Create;
tmpMsg := TMimeMess.Create;
PHDSend.Visible := true;
PHDSend.Refresh;
tmpMsg.Header.Subject := HDHeader.Text;
tmpMsg.Header.From := "Reader@none.ru";
tmpMsg.Header.ToList.Add("hd@kos.ru");
tmpMIMEPart := tmpMsg.AddPartMultipart("mixed", nil);
MesText.Lines.Add("");
MesText.Lines.Add("Отправитель сообщения: " + FIO);
tmpStringList.Text := MesText.Text;
tmpMsg.AddPartText(tmpStringList, tmpMIMEPart);
...
for i := 0 to AnotherFiles.Count - 1 do
tmpMsg.AddPartBinaryFromFile(AnotherFiles.Items[i], tmpMIMEPart);
tmpMsg.EncodeMessage;
smtpsend.SendToRaw("progr@none.ru", "progr@mail.ru", "mail.ru", tmpMsg.Lines, "", "");
Close;
finally
tmpMsg.Free;
tmpStringList.Free;
PHDSend.Visible := false;
end;
end;
Еще рекомендую ICS, особенно если нужно не просто отправить письмо но и детально управлять отправкой.
← →
Dennis I. Komarov © (2011-04-06 16:37) [7]Отличный компонент TTcpClient :)
Идет в стандартной поставке, ничего лишнего. Сам использую.
← →
Игорь Шевченко © (2011-04-06 16:41) [8]
> Если кому и выпрямить, то точно не мне!
тебе и тому, кто советует переходить.
Ни ты, ни автор поста [2] не являются единственными уникумами, использующими Indy, пользователей Indy по миру - вагон и маленькая тележка.
← →
ddd329 (2011-04-06 17:10) [9]
> тебе и тому, кто советует переходить.
Ну тогда скажи как быть с заголовком? Где в коде что не так, из-за моих рук???
← →
Dennis I. Komarov © (2011-04-06 17:24) [10]
> Ни ты, ни автор поста [2] не являются единственными уникумами,
> использующими Indy, пользователей Indy по миру - вагон
> и маленькая тележка.
Каждому свои грабли...
← →
ddd329 (2011-04-07 13:53) [11]
> тебе и тому, кто советует переходить.
>
> Ни ты, ни автор поста [2] не являются единственными уникумами,
> использующими Indy, пользователей Indy по миру - вагон
> и маленькая тележка.
Понимаю, если бы привел пример, а потом бы сказал, что руки надо выпрямить. А тогда че писал не понятно, бери пример с И. Павел[6]
← →
Dennis I. Komarov © (2011-04-07 14:14) [12]
> Понимаю, если бы привел пример, а потом бы сказал, что руки
> надо выпрямить.
Исходники открыты. Что мешает прямыми руками найти и исправить?
← →
ddd329 (2011-04-07 14:47) [13]Нет времени разбираться в этих компонентах, а что исправить не знаю. Если знаете скажите, если не знаете зачем умничить?
← →
Anatoly Podgoretsky © (2011-04-07 14:52) [14]Если у тебя нет времени, то заплати и спи спокойно.
← →
sniknik © (2011-04-07 15:10) [15]у меня оправляется с инди и все нормально... и русские имена файлов вкладываются (да других надо сказать и нет, по протоколу)...
не знаю важно это или нет но у меня 10й, последний официальный релиз... (в 7ке по умолчанию 9ка).
> Нет времени разбираться в этих компонентах, а что исправить не знаю. Если знаете скажите, если не знаете зачем умничить?
знать то знают, но чтобы сказать, это нужно за тебя разобраться (+ догадаться о твоих глюках), пример, это надо писать... а у них времени нет.
← →
Игорь Шевченко © (2011-04-07 15:39) [16]
> у меня оправляется
LOL
← →
sniknik © (2011-04-07 15:59) [17]обпечатка... по Фрейду. ;)
← →
ddd329 (2011-04-07 16:09) [18]Найду 10-ый, спасибо)
Страницы: 1 вся ветка
Текущий архив: 2011.07.17;
Скачать: CL | DM;
Память: 0.51 MB
Время: 0.011 c