![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема
Bast © (2007-09-04 10:10:00)Здравствуйте! У меня 1 прооблемка. Дело в том что я хочу написать: Если невозможно подключиться то заного исполняется код... Сделал я это через метку, но почему то неработает
begin
inc(Timer);
If Timer>strtoint(form1.edit5.Text) then
begin
form1.Memo2.Lines.Add('Îòñîåäèíÿ 29;ìñÿ îò ñåðâåðà íà '+form1.Edit6.Text+' ìèí.');
zz:
Synchronize(men);
form1.IdPOP31.Disconnect;
form1.IdSMTP1.Disconnect;
sleep(strtoint(form1.edit6.text)*60000);
form1.IdSMTP1.Host:=form1.Edit1.Text;
form1.IdPOP31.Host:=form1.Edit2.Text;
form1.IdSMTP1.Username:=form1.Edit3.Text;
form1.IdSMTP1.Password:=form1.Edit4.Text;
form1.IdPOP31.Username:=form1.Edit3.Text;
form1.IdPOP31.Password:=form1.Edit4.Text;
form1.IdPOP31.Connect();
If not form1.IdPOP31.Connected then goto zz;
timer:=0;
end;
Ivolg (2007-09-04 13:24:00) [1]А не проще ли сделать отдельную процедуру для подключения, в соответственном обработчике ловить ошибку, а затем исполнять процедуру подключения заново ?
Anatoly Podgoretsky (2007-09-04 12:11:00) [2]Действительно проблема, при том перманентная.
Сергей М. (2007-09-04 10:28:00) [3]
> Bast
Если мне не изменяет память, тебя уже тыкали (и не раз) носом в грубые ошибки, связанные с обращениями к VCL-контролам в доп.потоке. А воз и ныне там)
Спамер из тебя, однако, никакой.. И это радует)
Ega23 (2007-09-04 10:16:00) [4]Да, ну и по аналогии с именами объектов, процедуры такде именовать
procedure1, procedure2, ... procedureN
Bast (2007-09-04 10:15:00) [5]:) расстрелять потом, сначало подсказать)
Ega23 (2007-09-04 10:15:00) [6]А если серьёзно, то:
1. While (условие)
2. Выкинуть эту дрянь из дополнительного потока. Вообще убрать нафиг дополнительный поток.
Ega23 (2007-09-04 10:13:00) [7]Расстрелять.