Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.26;
Скачать: CL | DM;

Вниз

Вопрос про отправку мыла.   Найти похожие ветки 

 
vegarulez ©   (2007-07-31 11:11) [0]

Привет Мастерам!
У меня вот такой вопрос: я в программке использую кусок, который отправляет данные на мыло:

procedure Smtpsend();
begin
 with Formmain.IdMsgSend do
 begin
   Body.Assign(Memo1.Lines);
   From.Text := "yyy";
   Recipients.EMailAddresses := q[17]; { To: header }
   Subject := FormMain.a; { Subject: header }
   Priority := TIdMessagePriority(mpNormal); { Message Priority }
   ReceiptRecipient.Text := From.Text;
 end;

 {authentication settings}
 Formmain.SMTP.AuthenticationType := atLogin; {Simple Login}
 Formmain.SMTP.UserID :="xxx";
 Formmain.SMTP.Password := "xxx";

 {General setup}
 Formmain.SMTP.Host := "smtp.xxx.ru";
 Formmain.SMTP.Port := 25;

 {now we send the message}
 Formmain.SMTP.Connect;
 try
   Formmain.SMTP.Send(Formmain.IdMsgSend);
 finally
   Formmain.SMTP.Disconnect;
 end;
end;


Так вот при отправке, вся программка "висит" какое-то время... пока письмо не отправится, подскажите как можно сделать, чтобы отправка допустим осуществлялась как-нить в  потоке, не влияя на работу приложения?


 
StriderMan ©   (2007-07-31 11:17) [1]

TIdSMTP.OnWork

туда можно подложить Application.ProcessMessages, только осторожно :)

еще лучше запихнуть прием-отправку в отдельный поток.


 
Savek   (2007-07-31 11:17) [2]

Кинь на форму компонент TIDAntifreeze и радуйся :)


 
StriderMan ©   (2007-07-31 11:20) [3]


> компонент TIDAntifreeze

хе, не знал про такой


 
vegarulez ©   (2007-07-31 11:20) [4]

Savek   (31.07.07 11:17) [2]

Уже есть...

StriderMan ©   (31.07.07 11:17) [1]
>>еще лучше запихнуть прием-отправку в отдельный поток.

Вот это, если можно попдробнее...  Как раз так и хочу сделать, но не знаю как...


 
StriderMan ©   (2007-07-31 11:32) [5]


> Вот это, если можно попдробнее...  Как раз так и хочу сделать, но не знаю как...

прежде всего читать про многопоточные приложения

ну или TThread + F1, если лень :)


 
vegarulez ©   (2007-07-31 12:31) [6]

>>прежде всего читать про многопоточные приложения

у тебя есть какая нить хорошая ссыль на эту тему?
буду очень признателен.


 
StriderMan ©   (2007-07-31 12:46) [7]

честно говоря нет. сам изучал по яндексу и гуглу, по книжкам каким-то еще, уже не помню каким :)



Страницы: 1 вся ветка

Текущий архив: 2007.08.26;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.058 c
15-1185317830
Riply
2007-07-25 02:57
2007.08.26
Zip диск и NTFS.


6-1165573291
net_daemon
2006-12-08 13:21
2007.08.26
Как работать на канальном и (или) физическом уровне?


15-1185430223
Vlad Oshin
2007-07-26 10:10
2007.08.26
Математика. Ряды, сходимость. Обратная задача.


1-1182243710
DrAndrew
2007-06-19 13:01
2007.08.26
Ошибка #10061 у IdHTTP1. Как исправить?


4-1173117533
Альберт
2007-03-05 20:58
2007.08.26
почему не обновляется окно?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский