Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];




Вниз

Передача динамического массива через Сокеты. Пример.... 


Abzetdin   (2001-11-19 19:36) [0]

Существует ли ограничение относительно размера данных динамического массива передаваемых за один раз через стандартный сокет.
Дело в том, что независимо от сумарного размера передаваемых данных, принимаемые не превышают 8192 byte.
Т.е. если даже TotalBytesSend > 8192, то TotalBytesReceive всегда равна 8192

TotalBytesSend:= ServerSocket1.Socket.Connections[0].SendBuf(SendMatrix^, BufSize);

TotalBytesReceived:= Socket.ReceiveLength;
Socket.ReceiveBuf(SendMatrix^, BufSize);

В чём тут дело? Или существует ли свойство регулирующее размер буфера сокета?

Заранее спасибо.



panov   (2001-11-19 20:26) [1]

socket сам делит поток данных на пакеты, размер которых установлен в реестре.
К сожалению, название параметра не помню.



Abzetdin   (2001-11-19 20:32) [2]

Спасибо, ну это понятно, а чем объяснить то что общтй размер принятых данных никак не не превышает 8192 байт. Напомню, что я передаю динамический массив. Код примера приведен в моем предыдущем вопросе.



panov   (2001-11-19 20:45) [3]

На приемном конце данные приходят не одним пакетом, а также разбитые на на те же самые пакеты длиной 8192.

Т.е., если при посылке не приходится беспокоиться о разбивке данных, то при приеме каждую порцию нужно обрабатывать отдельно.



Abzetdin   (2001-11-19 21:39) [4]

Огромное спасибо, буду искать соответствующее свойство.




Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.012 c
1-32276           IronHawk              2002-01-24 16:35  2002.02.11  
И снова проблема .... многоуважаемые Мастера ! ! !


3-32168           Yu                    2002-01-15 09:30  2002.02.11  
Как проверить корректность вводимых данных?


3-32142           Voi                   2002-01-15 15:02  2002.02.11  
Посимвальная отфильтрация данных в Delphi


1-32258           Оля                   2002-01-28 12:08  2002.02.11  
Инсталлятор


1-32240           Brand                 2002-01-27 23:09  2002.02.11  
DLL, связь с основной программой