Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Проблема с Client Socket, Server Socket


Автор: Alex103 2.5.2005, 07:11
Есть такая проблемма!! когда клиент что-то посылает то сервер должен это получить и выполнить определенные действия, в зависимости от того что пришло. Но при получении сервером обрабатываеться только тот запрос который стоит выше!! Я может плохо все рассказал, лучше я это покажу на примере.

Код

//Это для Клиента

procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Socket.SendText('message');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ClientSocket1.Socket.SendText('message2');
end;

//Это для сервера

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
if socket.ReceiveText = 'message2' then showmessage('Все работает2'); //Но почему-то это работает а другое сообщение нет в че дело я не пойму может вы подскажите

if socket.ReceiveText ='message' then showmessage('Все работает');
end;


Автор: dvamaster 2.5.2005, 07:32
Это от того не работает, что ты два раза принимаешь сообщение.
А отсылается один раз.

Думаю так лучше.

Код

var
  s: String;
begin
  s := socket.ReceiveText;
  if s = ..
  if s = ..
end;

Автор: Alex 2.5.2005, 08:17
Перенесено из раздела Дельфи

Автор: Alex103 3.5.2005, 05:35
Цитата(dvamaster @ 2.5.2005, 07:32)
Это от того не работает, что ты два раза принимаешь сообщение.
А отсылается один раз.

Думаю так лучше.

Код

var
  s: String;
begin
  s := socket.ReceiveText;
  if s = ..
  if s = ..
end;

Огромнейшее тебе спасибо!!! Ты мне очень помог!!! Вот тебе плюсик!!!! smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)