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

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

 
LEONardo   (2004-07-02 12:31) [0]

Пожалуйста дайте дельный ответ, душа кричит! Почему в приведенном ниже случае TclientSocket не передает строку
серверу???

Program ...;
Uses ...;

var Cl:TclientSocket;

begin
CL:=TclientSocket.create(nil);
CL.address:="127.0.0.1";
CL.port:=15000;
CL.clientType:=mtNonBlocking;
CL.open; //or CL.active:=true;
//соединение произошло успешно СЕРВАК увидел нас
//(обработа  OnConnect)
CL.socket.sendText("Message From client");
CL.close;
end;


 
Digitman ©   (2004-07-02 12:43) [1]


> CL.open; //or CL.active:=true;
> //соединение произошло успешно СЕРВАК увидел нас //не выдумывай, факт установления коннекта есть факт события OnConnect, а не твои домыслы
> //(обработа  OnConnect) это как так ?! событие-то - АСИНХРОННОЕ !
> CL.socket.sendText("Message From client"); //в пустоту посылаешь - коннект еще не установлен


 
LEONardo   (2004-07-02 13:04) [2]

Напиши пожалуйста, как можно обойти данную ситюєйшн?
С момента CL.port:=15000


 
Iraizor ©   (2004-07-02 13:07) [3]

Работай в синхронном режиме - гораздо проже будет.или же, делая вывод из поста [1], могу посоветовать не сразу после открытия сокета слать текст, а в цикле отловить OnConnect и уже потом выполнять какие-либо действия.


 
Digitman ©   (2004-07-02 13:09) [4]


> LEONardo   (02.07.04 13:04) [2]


просто установи ClientType = ctBlocking, тогда логика коннекта и према/перема передачи будет синхронная, т.е. после ClientSocket.Open коннект гарантированно осуществлен (если не было при этом возбуждено исключение), и следом можно смело вызывать методы приема/передачи


 
LEONardo   (2004-07-02 13:10) [5]

НУ лан
всем дякую


 
Digitman ©   (2004-07-02 13:23) [6]


> LEONardo   (02.07.04 13:10) [5]


сходи на http://book.itep.ru в раздел "Winsock"
весьма полезный ресурс для понимания происходящего в недрах TClientSocket, особенно когда исх.текст модуля scktcomp.pas открыт перед глазами



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

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



Память: 0.46 MB
Время: 0.036 c
1-1092729948
Russko
2004-08-17 12:05
2004.09.05
PageControl и горячие клавищи


14-1092866400
i-s-v
2004-08-19 02:00
2004.09.05
Англия-Украина 3:0


14-1092643121
Anton15
2004-08-16 11:58
2004.09.05
Word


4-1090302822
acidman
2004-07-20 09:53
2004.09.05
LPT под win2k/XP/NT


6-1088676977
intruder
2004-07-01 14:16
2004.09.05
Отправка сообщения через прокси




   Наверх