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

Вниз

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

 
snake1977   (2003-07-29 09:12) [0]

Здравствуйте! Подскажите пожалуйста, я использую TClientSocket и TServerSocket. Вот кусок исходника:

Var ClientConnected:Boolean;

....
ClientConnected:=False;
Client1.Active:=True;
if Client1.Active Then ClientConnected:=True;
....

Проблема в том что условие никогда не выполняется, т.е. выполняется но со временем, т.е. приходится использовать что то типа While not Client1.Active do Application.ProcessMessages;
но тогда происходит зависание, если серверный сокет не активен.

Как проверить что клиент приконнектился к серверу?


 
Digitman ©   (2003-07-29 09:21) [1]


> но тогда происходит зависание


какое такое "зависание" ?)

"зависание" ты получишь , если


Client1.Active:=False;
Client1.ClientType := ctBlocking;
Client1.Active:=True; // вот здесь и "повиснешь" до тех пор, пока не будет установлен коннект либо в нем тебе будет отказано



 
Verg ©   (2003-07-29 13:15) [2]


> Как проверить что клиент приконнектился к серверу?


В режиме по умолчанию используется nonBklocking или аснхронный режим работы с TClientSocket. Таким образом, Client1.Active:=True; только инициирует процесс соединения. А результат соединения получаешь обрабаотывая события OnError, OnWrite, OnDisconnect. Только после получения события OnWrite можно считать соединение состоявшимся.



 
Basilio ©   (2003-07-29 19:11) [3]

Может прокатить такой код:
Client1.Active:=true;
while not Client1.Connected do Application.ProcessMessages;

> клиенту нужно время, чтобы сконнектится


 
Polevi ©   (2003-07-30 15:17) [4]

Basilio © (29.07.03 19:11)
плохой код



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
1-96182
Vitaliygavrilov
2003-09-16 11:08
2003.09.29
На что нужно обратить внимание что сократить размер программы.


4-96490
howl
2003-07-25 13:48
2003.09.29
Закрытие приложения


9-96049
Lavo4nik
2003-03-21 20:33
2003.09.29
А можно ли рисунок прикрепить к курсору?


3-96100
vchris
2003-09-09 13:24
2003.09.29
Таблицы dBase


9-96043
Yura
2003-03-25 22:57
2003.09.29
1Создание 2d карт(теория)