Показать сообщение отдельно
  #1  
Старый 20.10.2010, 18:39
wowsel wowsel вне форума
Прохожий
 
Регистрация: 20.10.2010
Сообщения: 1
Репутация: 10
Восклицание TServerSocket TserverClient

Здравствуйте.
Пишу тест на delphi с использованием выше названных компонентов, возник такой вопрос: Клиент соединяется с серверов, отправляет ему нужные данные и должен получить ответ, как серверу отправить ответ именно нужному клиенту а не через перебор всем?
Клиент
Код:
procedure TMainform1.csConnect(Sender: TObject; Socket: TCustomWinSocket);
var
  mydate: Tdatetime;
  formatteddatetime: string;
begin
  mydate := Now;
  // Получаем текущее время

  DateTimeToString(formatteddatetime, 'c', mydate);
  // Переводим в строку
  debug1.log.Lines.Add(formatteddatetime + ': Соединение с сервером - ' +
      Socket.RemoteAddress + '  установлено.');
       cs.Socket.SendText('$N1');

end;
Сервер
Код:
procedure TForm1.sssClientRead(Sender: TObject; Socket: TCustomWinSocket);
var
  w,s: string;
  h,i,t,n:integer;
begin
  { сохраняем в s присланную нам строку }
  s := Socket.ReceiveText;
  if Copy(s, 1, 2) = '$N' then
  begin
    Delete(s, 1, 2);
    n:=StrToInt(s);
    case n of
    1: begin ??????
    end;

в 1: begin нам нужно отправить именно тому клиенту кто прислал некоторую строчку, подскажите как. Думаю по поводу sss.Socket.SocketHandle но ничего в голову не приходит.
Ответить с цитированием