Главная страница
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.48 MB
Время: 0.084 c
2-1186045260
_Tehnik_
2007-08-02 13:01
2007.08.26
Приложение на переднем плане и исчо кое что постаршнее


2-1185989348
rlzzz
2007-08-01 21:29
2007.08.26
Люди Как массив заполнить?


11-1166785407
Fregl
2006-12-22 14:03
2007.08.26
Работа с BDE32


5-1160386111
Prohor
2006-10-09 13:28
2007.08.26
Где взять нормальный DbGridEh


11-1168594562
Fregl
2007-01-12 12:36
2007.08.26
Предложение по реструктуризации форума