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

Вниз

Как узнать, от какого клиента пришли данные в TServerSocket ? (+)   Найти похожие ветки 

 
Виноградов Алексей   (2003-09-25 20:54) [0]

Разъясните, пожалуйста, вот что.
У меня есть сервер на TServerSocket. NonBlocking. Ясное дело, с ним одновременно могут работать несколько клиентов. Допустим, программа такая: i-й клиент посылает серверу строчку символов, сервер отвечает ему "Hi". Так вот, у меня вопрос - как узнать, какой конкретно клиент послал строчку и кому отвечать, то есть, как узнать номер элемента в массивe CONNECTIONS (как узнать значение переменной "i"):

Сmd_Socket.Socket.connections[ i ].sendtext("Hi Have a nice day !" + #13 + #10);

Большое спасибо за помощь!

С уважением, Виноградов Алексей


 
Tommy   (2003-09-25 22:39) [1]

у меня в практике была такая ситуация.... поступила так... не знаю правда насколько это правильно....
каждый раз когда кто-нибудь коннектится я сопоставляю порядковый номер его коннекта его IP адресу в одном массиве и потом отискиваю его connection number по его IP...


 
Digitman ©   (2003-09-26 08:03) [2]

Когда возникает событие OnClientRead(), то вторым параметром процедуры его обработки передается ссылка на объект Socket: TServerClientWinSocket. Этот объект ассоциирован именно с тем клиентом, пришедщие данные от которого возбудили в данный момент данное событие.

Достаточно запомнить ссылку на этот объект где-то вне процедуры обработки (в некой переменной SavedSocket: TCustomWinSocket), и в момент необходимости передачи данному клиенту инф-ции нужно просто вызвать метод SavedSocket.SendЧтоТо() ... и всех делов)



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
1-65993
Mouse
2003-11-10 15:38
2003.11.20
Как отучить TreeView менять у выделенного Node ImageIndex


1-65863
RoLeX
2003-11-09 15:53
2003.11.20
Как запустить файл с параметрами???


1-65961
Calm
2003-11-10 18:35
2003.11.20
Как открыть web-страницу в НОВОМ окне


4-66154
LOX
2003-09-11 15:04
2003.11.20
Как отловить нажатие клавиш


1-65849
A natoly
2003-11-11 13:00
2003.11.20
Люди, помогите сделать ф-ю, вырезки части в строковой переменной