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

Вниз

---|Ветка была без названия|---   Найти похожие ветки 

 
SMKRZ   (2003-11-01 17:14) [0]

В общем проблема в следующем. Есть две программы: одна клиент ( idTCPClient), другая сервер ( IdTCPServer). Серверов много, клиент один. Клиент выбирает из списка нужный хост, коннектится по нему, отсылает сообщение, получает ответ и рвёт связь, и по циклу выбирает следёющий хост и всё повторяется сначала... Проблема в том, что в это время с прилдожением нельзя работать, так как фактически оно зависшее , не реагируещее ни на какие события! Как с этим бороться?
Код клиента:

var ping : boolean;
...
try
form1.IdTCPClient1.Host:=get_ip; //выбор ай-пи из списка
Form1.IdTCPClient1.Connect;
form1.IdTCPClient1.WriteLn("ping");
Form1.IdTCPClient1.ReadLn;
except
ping:=false; //если есть ошибки, значит попытка закончилась неудачей
end;
Form1.IdTCPClient1.Disconnect;

Код сервера:

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var mess : string;
begin
mess:=AThread.Connection.ReadLn;
SpeedButton1.Caption:=mess;
if mess="ping" then
AThread.Connection.WriteLn("pong");
AThread.Connection.Disconnect;
end;


 
nv-vetal ©   (2003-11-01 22:50) [1]

Application.ProcessMessagess



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

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

Наверх




Память: 0.46 MB
Время: 0.019 c
3-99436
Vick
2003-12-04 18:01
2003.12.30
Обработка ошибок в MSSQL


3-99479
Godness
2003-12-01 18:25
2003.12.30
Бесплатные сервера


1-99531
DelphiNew
2003-12-16 14:25
2003.12.30
Проблема при вводе данных


1-99536
Rawman
2003-12-16 12:25
2003.12.30
Изменение стандартных компонент


14-99709
Dimman1
2003-12-09 11:16
2003.12.30
Использование снифферов в сети с коммутаторами