СообЧа > База Знаний > Программирование > Delphi

Вопрос

Есть два компа в сети, необходимо написать программку обмена информации между ними с использованием сокетов. Все, вроде бы, нормально, но вот при дисконнекте (со стороны сервера) в клиентской части происходит следующее: выполняется событие onDisconnect — свойство Active устанавливается в False — свойство Socket.Connected показывает True. При включении серверной программы в клиентской выполняю ClientSocket1.Open, а соединения не происходит.

Ответ

При разрыве соединения с стороны сервера, клиент получает ошибку eeDisconnect (событие onError), при этом нужно, если
Client.Active=True
то выполнить
Client.Close
и начинать все по новой. Это самое можно сделать через таймер по схеме:
коннетимся … получилось-ок (таймер удавили), нет — опять по новой, разорвались — опять таймера ждем.

Nartov Alex



Copyright © 2000-2004 Сообщество Чайников
Контактная информация