Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.041 c
2-1164121784
kirillrepin
2006-11-21 18:09
2006.12.10
как во внутрь процедуры вставить задержку


15-1164298836
Mr. D
2006-11-23 19:20
2006.12.10
Посоветуйте простенький DHCP-сервер


15-1163928728
MsGuns
2006-11-19 12:32
2006.12.10
Транспортировка тяжестей


2-1164095901
Сатир
2006-11-21 10:58
2006.12.10
Именованные массивы


15-1163994028
Slider007
2006-11-20 06:40
2006.12.10
С днем рождения ! 19 ноября





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский