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

Вниз

Есть ClientSocket , установлено NonBlocking. Засасываю в StringLi   Найти похожие ветки 

 
Softik   (2003-02-17 15:11) [0]

Есть ClientSocket , установлено NonBlocking. Засасываю в StringList (StringList1.Add(Socket.ReceiveText)),но он только по 1460 байт засасывает (длина stringlist1.string[i]), и получаеться обрезаеться немного.
Как мне увеличить это? (кол-во байт)
подскажите, не пойму, не нашел никаких свойств в ClientSocket.


 
Digitman ©   (2003-02-17 15:46) [1]

Ожидать, что каждый вызов приемником метода ReceiveText() вернет в точности то, что было послано передатчиком вызовом соотв.метода SendText() нельзя. Т.е. однозначного соответствия "переданная строка = принятая строка" и "кол-во посылок = кол-во событий OnRead()" нет и быть не может.

Вот вполне реальная ситуация :

>передатчик - SendText("XXX"), приемник - ReceiveText()=""
>передатчик - SendText("YYY"), приемник - ReceiveText()="XX"
>передатчик - SendText("ZZZ"), приемник - ReceiveText()="XY"
>..............................приемник - ReceiveText()="Y"
>..............................приемник - ReceiveText()="YZZ"
>..............................приемник - ReceiveText()="Z"

Протокол - поточный. Делай выводы


Кр.того, без анализа передатчиком результата вызова SendText()и обработки передатчиком события OnWrite() дальнейшие "потуги" в реализации транспорта на неблок.гнездах лишены смысла и работать все это как положено не будет.


 
Softik   (2003-02-17 15:52) [2]

а как тогда сделать, подскажи пожалуйста!


 
Digitman ©   (2003-02-17 16:02) [3]

Ты хотя бы задачу сформулируй конкретно) ... прежде чем подскажки клянчить)


 
Softik   (2003-02-17 16:08) [4]

принимаю с сервера по порту данные, потом он сразу отключается.
мне нужно просто принять ВСЕ даныые и желательно в какой-нибудь удобноваримом виде, например в StringList.


 
Digitman ©   (2003-02-17 16:16) [5]


> принять ВСЕ даныые


и каков протокол инф.обмена у тебя ?


 
Softik   (2003-02-17 20:52) [6]

ну простая подача байтов которую мне надо принять, вот и все.
Сервер сам обрубает, когда все байты переданы.


 
Digitman ©   (2003-02-18 09:01) [7]


> простая подача байтов


Почему же тогда - SendText() ? Почему не SendBuf() ? И - где анализ результата вызова SendText() ? Где обработка On[Client]Write ?


> Сервер сам обрубает


Кого он "обрубает" ??) Я не понял.



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
3-30273
calm
2003-03-21 16:26
2003.04.10
При вызове исключения все, что сделано в ХП откатывается, так?


14-30522
RDA
2003-03-23 21:37
2003.04.10
Для жителей Украины работающих с казначейством


7-30616
Дмитрий С.
2003-02-14 23:44
2003.04.10
Уважаемые мастера помогите с выключение компьютера под WinXP


1-30324
Apachi
2003-03-31 12:58
2003.04.10
res file


14-30595
acsoft
2003-03-25 06:31
2003.04.10
Создать zip-архив