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

Вниз

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

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

Наверх





Память: 0.47 MB
Время: 0.008 c
3-5975
Gumbert-Gumbert
2004-02-04 15:55
2004.03.03
Как сделать таблицу с такими же полями какие возвращает SQL запро


1-6106
Ал
2004-01-23 13:38
2004.03.03
Функция в Делфи


14-6199
марсианин
2004-02-11 16:47
2004.03.03
Имена каталогов после восстановления


6-6175
Perf
2003-12-26 09:07
2004.03.03
Определение IP и поиск компов в локалке


3-5955
Lisa
2004-02-05 22:15
2004.03.03
Какие поля содержатся в результате выполнения запроса в TQuery?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский