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

Вниз

Как дождаться соединения асинхронного сокета?   Найти похожие ветки 

 
alexEagle ©   (2003-12-25 16:05) [0]

FSocket это TClientSocket

FSocket.Host := ...;
FSocket.Port := ...;
FSocket.Active := true;

И вот здесь мне узнать соединился ли я с сервером не используя OnConnect.


 
Polevi ©   (2003-12-25 16:09) [1]

OnWrite подойдет ?


 
alexEagle ©   (2003-12-25 16:24) [2]

Нет, события вообще не подойдут, хотелось бы это узнать сразу после FSocket.Active := true;
Я пробовал делать так:
nRes := select(0, nil, @FDSet, nil, @TimeVal);
if nRes = 0 then begin
FSocket.Active := false;
FLastError := "


 
alexEagle ©   (2003-12-25 16:27) [3]

Кстати, может у кого то есть примеры как на делфи работать исключительно АПИ-шными функциями при работе с сокетами, а то у меня получается некоторая проблема:
1. Соединение мне нужно установить синхронно.
2. Получать данные асинхронно кроме случая когда мне нужно получить ответ на посланную мне команду.

Может кто посоветует?


 
Polevi ©   (2003-12-25 16:31) [4]

http://delphimaster.net/view/6-1072263854/
режим работы гнезда можно менять в любой момент, см ioctlsocket


 
Digitman ©   (2003-12-25 16:38) [5]


> Соединение мне нужно установить синхронно


что за блажь ?


 
SergP ©   (2003-12-25 19:26) [6]


> FSocket.Active := true;
>
> И вот здесь мне узнать соединился ли я с сервером не используя
> OnConnect.


Ну и как это ты себе представляешь? Ведь после того как ты делаешь FSocket.Active := true; сокет соединяется не сразу а ему нужно некоторое время...
Разве что можно поставить цикл для ожидания конекта... В таком случае используй какую нить переменную (флаг) которая будет устанавливаться в OnConnect, а цикл будет постоянно ее (переменную) проверять....


 
Polevi ©   (2003-12-26 09:50) [7]

>SergP © (25.12.03 19:26) [6]
не давай плохих советов, плиз


 
SergP ©   (2003-12-26 11:02) [8]


> Polevi © (26.12.03 09:50) [7]
> >SergP © (25.12.03 19:26) [6]
> не давай плохих советов, плиз


Ладно. Не буду.. Только объясните мне плиз зачем проверять соединился ли сокет сразу же после:
FSocket.Active := true;

Может я что-то не понимаю, но имхо ответ всегда будет однозначный - "не соединился"...


 
Polevi ©   (2003-12-26 16:21) [9]

>SergP © (26.12.03 11:02) [8]
это зависит от режима гнезда


 
имя   (2003-12-26 17:49) [10]

Удалено модератором
Примечание: Клоуны нам не нужны ...


 
Polevi ©   (2003-12-26 19:03) [11]

Удалено модератором



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

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

Наверх




Память: 0.49 MB
Время: 0.02 c
1-6040
Evgen77
2004-02-19 05:41
2004.03.03
Поиск символа в строке


14-6239
Cosinus
2004-02-07 13:55
2004.03.03
Как вы относитесь к творчеству Лукьяненко?


8-6162
Borealis
2003-10-23 12:21
2004.03.03
Расстояние между цветами


14-6222
Ru
2004-02-11 11:18
2004.03.03
Можно ли обойти запрет на посещение сайтов?


1-6028
Сережа
2004-02-18 19:32
2004.03.03
Panel перекрывает Image