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

Вниз

Сокеты =)   Найти похожие ветки 

 
Barsky ©   (2006-07-18 18:14) [0]

Есть 2 программы : клиент и сервер.

На сервере мемо и серверсокет, на клиенте кнопка и клиентсокет.

Запускается на одной машине.

сервер:

procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
 Socket: TCustomWinSocket);
begin
Memo1.Lines.Add("connect");
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
 Socket: TCustomWinSocket);
begin
Memo1.Lines.Add(Socket.ReceiveText);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ServerSocket1.Active:=true;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ServerSocket1.Active:=false;
end;


должен принять соединение, написать коннект в мемо, и написать переданный текст в то же мемо.

Клиент:

procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Active:=true;
ClientSocket1.Socket.SendText("12312312312312");
ClientSocket1.Active:=false;

end;


Должен подсоедениться к серверу у передать строку.

Запускаем сервер, запускаем клиент.

Нажимаю на кнопку на клиенте, сервер пишет ТОЛЬКО коннект.
Нажимаю еще раз, в мемо появляется переданная строка.

Вопрос: Почему не передается стринга сразу при первом нажатии?


 
umbra ©   (2006-07-18 18:33) [1]

а чему равен ClientSocket1.ClientType?


 
Barsky ©   (2006-07-18 18:34) [2]

ctNonBlocking


 
medved_68 ©   (2006-07-18 18:46) [3]


> procedure TForm1.Button1Click(Sender: TObject);
> begin
> ClientSocket1.Active:=true;
> ClientSocket1.Socket.SendText("12312312312312");
> ClientSocket1.Active:=false;

Перенеси ClientSocket1.Socket.SendText("12312312312312"); в событие ClientSocket1.OnConnect.


 
umbra ©   (2006-07-18 18:58) [4]

тогда получается, что после
ClientSocket1.Active:=true;
выполнение кода не блокируется и на момент отсылки текста соединение еще не установлено


 
medved_68 ©   (2006-07-18 19:09) [5]


> umbra

Точно


 
Barsky ©   (2006-07-19 10:11) [6]

Спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
2-1164040438
Vasiliy
2006-11-20 19:33
2006.12.10
Как обработать WM_NCMOUSEMOVE на не клиентской области?


2-1164274308
lobach
2006-11-23 12:31
2006.12.10
Помогите с шифрованием.


1-1162197747
Andrewk88
2006-10-30 11:42
2006.12.10
Подключение dll созданной в VS2k3


2-1164290067
Elf@ck
2006-11-23 16:54
2006.12.10
работа с обьектами


2-1164391337
daser
2006-11-24 21:02
2006.12.10
Есть RadioGroup. В нем 2 RadioButton.