Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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
15-1300669083
Германн
2011-03-21 03:58
2011.07.17
Ищу что-то типа SVN, но не для разработчиков, а для тестировщиков


3-1261473731
Xmen
2009-12-22 12:22
2011.07.17
Экспорт базы MySQL в FiriBird


15-1302072937
Scott Storch
2011-04-06 10:55
2011.07.17
tortoise svn


2-1302503570
И. Павел
2011-04-11 10:32
2011.07.17
Работа с TPrinter


2-1301819904
Leon-Z
2011-04-03 12:38
2011.07.17
ООП. Как сделать правильнее ???