-
Здраствуйте, уважаемые господа! У меня такой вопрос: Есть клиентское и серверное приложения, использую Indy 10, вопрос: после того, как клиент установил соединение с сервером, я, спустя некоторое время хочу закрыть серверное приложение, закрывается с Exception'ом но это не важно(наверно)... после этого, запускаю серверное приложение опять, а мне сообщается, что "Error - Could not bind socket. Address and Port already in use" как с этим бороться помогите плиз....
-
закрываю приложение следующим образом: try tlst := SFrmMain.IdTCPServer1.Contexts.LockList; for i:= 1 to tlst.Count -1 do TIdContext(tlst.Items[i]).Connection.Disconnect; finally SFrmMain.IdTCPServer1.Contexts.UnlockList; end; SFrmMain.IdTCPServer1.Active := false; SFrmMain.Close;
-
Если даже клиент сделает дисконнект, то все равно тоже самое "Error - Could not bind socket. Address and Port already in use", можеь быть есть определенный интервал времени, который необходимо выждать?
-
> PonosetcDM (07.09.2010 11:08:00) [0]
Надо использовать try finally
-
причем сдесь try finally, если я просто перезапускаю программу? и там вываливается ошибка что "Could not bind socket. Address and Port are already in use". Смысл в том, что он в цикл не заходит, кстати, хотя соединение с этим сервером активно...
-
Хотелось бы услышать мнение Сергея М. по этому вопросу.
-
Удалено модератором
-
> PonosetcDM (07.09.2010 11:30:04) [4]
Вот для того что бы этого не было. А ты что сюда за советом пришел или препираться, если за первым, то марш исполнять.
-
> он в цикл не заходит
Кто "он" ? В какой цикл ?
> for i:= 1 to tlst.Count -1 do
Единица-то с какого перепугу тут ?
|