Форум: "Сети";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
ВнизОпределить номер клиента. Найти похожие ветки
← →
LiNkS (2002-04-24 14:48) [0]Как это сделать в сокетах? Т.е. мне нужно отправить ответ сокету приславшему на сервер сообщение - в команде Server.Socket.Connections[Z].sendtext нужно ведь Z вставлять - как его определить?
← →
LiNkS (2002-04-24 15:05) [1]И как вобще слать не по Z, а по IP?
← →
Donal_Graeme (2002-04-24 15:15) [2]если ты собираешься отправлять ответ сразу после получения в событии OnClientRead - то там не надо ничего определять, есть параметр события Socket - это то соединение, с которого пришли данные.. так что Socket.SendText и все дела.
← →
Song (2002-04-24 15:19) [3]а по IP шлют через TClientSocket
← →
cyborg (2002-04-25 00:04) [4]Дело в том, что эта самая Z может поменяться, например подключено 3 сокета, соответственно Z1=0 Z2=1 Z3=2, если Z1 отключится, то Z2=0 Z3=1 , поэтому посылку таким способом лучше не использовать. Этот способ только годится, если вы хотите отправить всем подключённым одинаковые данные, а сделать это можно вот так:
For I:=0 to Form1.ServerSocket.Socket.ActiveConnections-1 do
Begin
Form1.ServerSocket.Socket.Connections[I].SendBuf(Data,DataSize);
End;
Извините, если что не так, я ещё только начинающий.
← →
Donal_Graeme (2002-04-25 10:43) [5]если кто-то отключится, мы получаем событие OnClientDisconnect и можем сделать соответствующие коррективы. а отправлять не через Connections[I] снаружи обработчика события просто не выйдет.
в принципе, если надо иметь возможность отправлять данные определённому клиенту и не из событий, то необходимо постоянно держать в памяти список подключений.
← →
Jeck (2002-04-26 21:11) [6]У каждого приконнектившегося есть уникальный ID Handle(Socket->Handle) запоминай его. И по нему потом ищи Connection[i].
что-то в этом роде
for(int i=0;i<ServerSocket->Socket->ActiveConnections;i++)
{
if(ServerSocket->Socket->Handle==myHandle)
{
ServerSocket->Socket->Connections[i]->SendStream(myStream);
break;
}
}
← →
Jeck (2002-04-26 21:14) [7]вот тут посмотри. Там подобное организовано.
http://src.fitkursk.ru/detail.asp?id=819
← →
Maxistar (2002-04-29 11:40) [8]Я использую Form1.ServerSocket.Socket.Connections[I].SocketHandle
← →
Ghost. (2002-04-29 13:11) [9]Тут еще вопрос можно решить поразному в зависимости от того, какая вообще общая цель..тоесть к чему привязвать к SocketHandle или еще чему другому
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c