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

Вниз

толи Server.Socket глючит толи у меня лыжы не едут   Найти похожие ветки 

 
RUS1   (2003-03-04 09:22) [0]

Всм привет!!!!
проблема:
подключаюсь клиентом к серверу через сокет, проверяю командой
Server.Socket.ActiveConnections количество активных подключений - все окей, активных 1 пользователь, отключаюсь методом Close клиента, опять делаю Server.Socket.ActiveConnections и активных подключений всеравно 1!!!! в чем дело может быть господа???
С уважением RUS!!! Жду предложений!!!!


 
Digitman ©   (2003-03-04 10:33) [1]

"лыж Ы не едут" - это скорей всего)


> опять делаю Server.Socket.ActiveConnections и активных подключений
> всеравно 1


когда "опять делаешь" ? в какой момент ? в обработчике какого события ? если в OnClientDisconnect(), то так оно и должно быть - декремент сч-ка списка акт.подключений выполняется сервером после завершения обработки этого события


 
RUS1   (2003-03-04 10:41) [2]

СПАСИБО БРАТ!!!!!!!
все далал именно так ка ты сказал - я ламер!!!!
тогда подскажы в каком событии лучше ставить метод Server.Socket.ActiveConnections чтобы корректно отслеживать клиетнов!!! или таймер единственный выход???


 
Fredericco ©   (2003-03-04 10:46) [3]

А зачем тебе ActiveConnections во время дисконнекта клиента?


 
Digitman ©   (2003-03-04 10:48) [4]


> корректно отслеживать клиетнов


что значит "корректно отслеживать" ?

procedure TMyForm.MyServerClientConnect(..);
begin
..
Inc(MyClientsCount);
..
end;

procedure TMyForm.MyServerClientDisconnect(..);
begin
..
Dec(MyClientsCount);
..
end;

всех делов)


 
RUS1   (2003-03-04 10:57) [5]

Все господа!!! великая отечественная война окончена всем спасибо!!!!!
все получилось!!!! СПАСИБО!!!


 
Beglec ©   (2003-03-04 21:37) [6]

Могу сказать одно. Как показала практика метод при помощи Inc and Dec под оболочкой 98 работает не корректно. потому как сами 9х не корректно работают с сетью.

Так к примеру - попробуйте в течении 4 часов делать коннект дисконект к серверу - быдет выдаваться ошибка памяти. И после этого количесво соединений не гаратируется.

В NT движке данная проблему уже решена.


 
Digitman ©   (2003-03-05 08:35) [7]


> Beglec



> метод при помощи Inc and Dec под оболочкой 98 работает не
> корректно


Ерунду ты городишь. Причем здесь Inc и Dec ? Уверен, что проблемы, с которыми ты столкнулся, связаны с недостаточным пониманием механизма Winsock и последовательности возбуждения/корректности обработки событий компонентов, базирующихся на Winsock.


> сами 9х не !корректно работают с сетью


Где конкретные аргументы ?


 
dimich1978 ©   (2003-03-05 13:03) [8]

Вообще вин9х с сетью никак не работает, и то что используя сетевую карту вин9х может все же работать с протоколами TCP/IP это все же вообще огромный баг вин9х. Так что кто собрался писать для сети что либо, нужна ось либо вин200х, либо лучше всего Дос, глюков меньше.
Ответ прислал:
Сертифицированный специалист по , багам в винде и их оптимизации.
:-))))


 
Aldor   (2003-03-05 14:26) [9]

TYourForm = class(TForm)
...
procedure RefreshClients (var Msg: TMessage);
message wm_RefreshClients;
...

procedure TYourForm.RefreshClients;
//здесь все твое типа for I := 0 to SomeSocket.ActiveCons - 1

...

procedure TYourForm.ServerSocket1ClientDisconnect(Sender: TObject;
begin
...
PostMessage (Handle, wm_RefreshClients, 0, 0);
...
end;

RefreshClients произойдет уже после внутренних преобразований TServerSocket.



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

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

Наверх




Память: 0.49 MB
Время: 0.02 c
7-91575
_GOG_
2003-03-07 06:36
2003.04.28
TShellListView


1-91266
KIE
2003-04-16 14:21
2003.04.28
OnKeyUP -события


1-91394
j.r.
2003-04-16 08:38
2003.04.28
поиск строки...


3-91199
VLADIMIR.
2003-04-09 20:48
2003.04.28
SQL отчет


7-91570
SniZ
2003-03-07 16:09
2003.04.28
Как получить изображение со сканера?