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

Вниз

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

 
BJValentine ©   (2004-04-01 16:20) [0]

В обработчике события чтения на клиентском сокете пытаюсь открыть другое соединение (использую для этого другой компонент TClientSocket).

  TS.Active:=true;
  TS.Socket.SendText("???");

Ошибок не выдаёт, но ничего не отправляет. Запустил отладку, выяснилось что и Active=false не смотря на TS.Active:=true;  Где тут камень?


 
Digitman ©   (2004-04-01 16:29) [1]


> Где тут камень?


"камень" - в НЕблокирующем рещиме работы того, на что ссылается TS


 
BJValentine ©   (2004-04-01 19:12) [2]

Точно, в нём. Но я не могу разобраться, как мне поступить в этой ситуации: Я принимаю ответ с сервера и в зависимости от его ответа хочу ему отправить данные (в этом же обработчике). Что мне нужно сделать, чтобы этого добиться?


 
Digitman ©   (2004-04-02 08:14) [3]


> Я принимаю ответ с сервера


где же принимаешь ? из кода видно, что первым делом , сразу за Open, ты пытаешься что-то послать серверу !


> не могу разобраться, как мне поступить в этой ситуации


в какой конкретно ? на каком режиме ты остановил свой выбор ?


 
Digitman ©   (2004-04-02 08:17) [4]

ах да ... я упустил из виду, что все это дело происходит в обработчике OnRead, и ты пытаешься установить коннект с другим сервером ..

тем не менее - какой режим вибираешь ?


 
Verg ©   (2004-04-02 09:19) [5]


> BJValentine ©   (01.04.04 19:12) [2]
> Точно, в нём. Но я не могу разобраться, как мне поступить
> в этой ситуации: Я принимаю ответ с сервера и в зависимости
> от его ответа хочу ему отправить данные (в этом же обработчике).
> Что мне нужно сделать, чтобы этого добиться?


Ну так и отправляй Socket.SendBuf - в чем проблема?

Вот если бы надо было в этом обработчике отправить данные какому-либо другому серверу, т.е. установить другое соединение, то тогда да, тут немного все сложнее в асинхронном режим (неблокирующем).


 
BJValentine ©   (2004-04-02 10:44) [6]

> тем не менее - какой режим вибираешь ?

Неблокирующий режим выбираю. Хочется чтобы сервер и клиент общались по событиям. А что, SendBuf будет работать?

Я так понял, что нужно про это внимательно почитать, но где? Может кто ссылку знает. На этом сайте я читал статьи, но там немного не понятно для начинающего описано. Хотя бы про неблокирующий режим.


 
Digitman ©   (2004-04-02 11:49) [7]


> Хочется чтобы сервер и клиент общались по событиям. А что,
> SendBuf будет работать?


Ну раз хочется, то никто и ничто этому не мешает
Конечно будет ! Куда он денется-то)


> нужно про это внимательно почитать, но где?


ну хотя бы для начала в станд.хэлпе к методу TCustomWinSocket.SendBuf()

попробуй вчитаться в каждую фразу описания и понять, о чем идет речь .. а о том , что будет непонятно после внимательного изучения материала, побеседуем уже в конкретностях, ок ?


 
BJValentine ©   (2004-04-02 11:59) [8]

Ok



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

Форум: "Сети";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
3-1082531575
Wild
2004-04-21 11:12
2004.05.23
Компонент TDbf


6-1080834503
serg128
2004-04-01 19:48
2004.05.23
Как передать файл по сети?


1-1084103079
Islander
2004-05-09 15:44
2004.05.23
Мигание формы при изменении Position


1-1084109087
Liona
2004-05-09 17:24
2004.05.23
Сортировка по колонкам в StringGrid?


1-1083828107
xman
2004-05-06 11:21
2004.05.23
Запуск моей программы





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