Вниз
Скачать: CL | DM;

CllientSoket и ServerSoket   Найти похожие ветки 

 
Кабан555   (2005-09-18 22:30) [0]

У меня проблема с компонентами CllientSoket и ServerSoket
В клиентской части по событию нажатия кнопки пишу следующее
 
ClientSocket1.Active:=true;
ClientSocket1.Socket.SendText(Edit2.Text);
ClientSocket1.Active:=false;

из кода видно что на серверную часть посылаеться текст из компонента Edit2
В серверной части в компоненте ServerSoket в событии onClientRead пишу следующее

Socket.active:=true;
s:=Socket.ReceiveText;
Socket.active:=false;
Label1.Caption:=s;

как видно сообщение должно отображаться в компоненте label1
но почему то отображаеться только каждое второе сообщение.
Может я что то не так далаю ?


 
kami ©   (2005-09-18 23:42) [1]

Не факт, что клиентский сокет сразу после начала подключения (Active:=True) установит соединение, чтобы можно было посылать информацию.
Из постановки вопроса не видно, что после приема информации нужно разрывать соединение, поэтому :
Socket.active:=true; ? Само собой, что сокет активен, иначе OnRead и не вызвалось бы.
Socket.active:=false; ? Разрыв соединения - это специально, или нет ?

Как я понимаю, это тестовая программка. Разнеси действия :
Поставь серверу Active:=True - в design-time;
ClientSocket.Active:=True - на одну кнопку (+ на ClientSocket.OnConnect - визуальное или звуковое оповещение что соединение прошло успешно)
Отправка текста серверу (и только она) - на вторую кнопку.

И в OnClientRead на ServerSocket пиши только
s:=Socket.ReceiveText;
Label1.Caption:=s;


 
antoxa2005   (2005-09-19 04:20) [2]

Попробуй не

ClientSocket1.Active:=true;
ClientSocket1.Socket.SendText(Edit2.Text);
ClientSocket1.Active:=false;

а ClientSocket1.Active:=false; после ответа клиента серверу, что он получил сообщение.


 
antoxa2005   (2005-09-19 04:21) [3]

"после ответа сервера клиенту"



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
14-1133566922
VirEx
2005-12-03 02:42
2005.12.25
Почему событие WM_TIMER у окна со временем начинает тормозить, и


2-1134150777
OLEGNik
2005-12-09 20:52
2005.12.25
Как экспортировать процедуры procedure(): overload из dll ?


14-1133770503
Fin
2005-12-05 11:15
2005.12.25
Текст о поиске работников!


4-1130219731
Alex_C
2005-10-25 09:55
2005.12.25
Как передать фокус другой программе?


5-1117790468
Никита
2005-06-03 13:21
2005.12.25
Как сделать чтобы компонент мог размещать на себе другие Контролы




   Наверх