Главная страница
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.021 c
2-1186036778
dimaL
2007-08-02 10:39
2007.08.26
MDI интерфейс


2-1186122337
Eugenepm
2007-08-03 10:25
2007.08.26
Обработка сообщений


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


15-1185349549
gn
2007-07-25 11:45
2007.08.26
Задачка


2-1185440914
Klopan
2007-07-26 13:08
2007.08.26
Отловить отключение сетевого кабеля