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

Вниз

Корректное завершение работы TIdTCServer   Найти похожие ветки 

 
PonosetcDM ©   (2010-09-07 11:08) [0]

Здраствуйте, уважаемые господа!
У меня такой вопрос: Есть клиентское и серверное приложения, использую Indy 10, вопрос: после того, как клиент установил соединение с сервером, я, спустя некоторое время хочу закрыть серверное приложение, закрывается с Exception"ом но это не важно(наверно)... после этого, запускаю серверное приложение опять, а мне сообщается, что "Error - Could not bind socket. Address and Port already in use"
как с этим бороться помогите плиз....


 
PonosetcDM ©   (2010-09-07 11:09) [1]

закрываю приложение следующим образом:
     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;


 
PonosetcDM ©   (2010-09-07 11:11) [2]

Если даже клиент сделает дисконнект, то все равно тоже самое "Error - Could not bind socket. Address and Port already in use", можеь быть есть определенный интервал времени, который необходимо выждать?


 
Anatoly Podgoretsky ©   (2010-09-07 11:26) [3]

> PonosetcDM  (07.09.2010 11:08:00)  [0]

Надо использовать try finally


 
PonosetcDM ©   (2010-09-07 11:30) [4]

причем сдесь try finally, если я просто перезапускаю программу? и там вываливается ошибка что "Could not bind socket. Address and Port are already in use". Смысл в том, что он в цикл не заходит, кстати, хотя соединение с этим сервером активно...


 
PonosetcDM ©   (2010-09-07 11:59) [5]

Хотелось бы услышать мнение Сергея М. по этому вопросу.


 
PonosetcDM ©   (2010-09-07 12:23) [6]

Удалено модератором


 
Anatoly Podgoretsky ©   (2010-09-07 12:54) [7]

> PonosetcDM  (07.09.2010 11:30:04)  [4]

Вот для того что бы этого не было.
А ты что сюда за советом пришел или препираться, если за первым, то марш
исполнять.


 
Сергей М. ©   (2010-09-07 13:24) [8]


> он в цикл не заходит


Кто "он" ?
В какой цикл ?


> for i:= 1 to tlst.Count -1 do


Единица-то с какого перепугу тут ?



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
2-1284037319
ZV
2010-09-09 17:01
2010.11.28
TTimer процедура обработки события таймера


15-1282217798
Василий Жогарев
2010-08-19 15:36
2010.11.28
ActionManager & ActionMainMenuBar


2-1283771755
rnts
2010-09-06 15:15
2010.11.28
Ошибка в запросе


15-1282465743
Alex Konshin
2010-08-22 12:29
2010.11.28
Windows 7 Update глюк отрубает RAID диски и может вызвать BSOD


15-1282556497
vajo
2010-08-23 13:41
2010.11.28
Блок питания.