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

Вниз

Пакеты UDP в TNMUDP   Найти похожие ветки 

 
grvakh   (2004-04-16 10:42) [0]

При превышении пакетом на отправляющей стороне размера 2048 на принимающей сторне в поле NumberBytes процедуры события DataReceived получается значение -1.

Можно ли с этим бороться? Без перехода на др. версии и др компоненты?  И вообще - с чем это связано?


 
Verg ©   (2004-04-16 10:57) [1]


>  И вообще - с чем это связано?


С размером буфера у самой компоненты при приеме из сокета.

var buffer : array[0..2047] of byte;

result := recv(UDPSocket, buffer, sizeof(buffer), 0);

если в сокете сидит датаграмма размером больше, чем sizeof(buffer), то Recv вернет SOCKET_ERROR (-1), при этом WSAGetLastError вернет WSAEMSGSIZE. Кстати, при этом  первые sizeof(buffer) байт из той длинной датаграммы таки будут скопированы в buffer.

Вот и все.
Размер приемного буфера у этой компоненты по-моему не регулируется.



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

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

Наверх




Память: 0.46 MB
Время: 0.023 c
1-1085416549
Lena19
2004-05-24 20:35
2004.06.06
задержка выполнения без нагрузки на проц


14-1084917690
diks
2004-05-19 02:01
2004.06.06
Game Launcher


14-1084551199
Layner
2004-05-14 20:13
2004.06.06
Житель России обратился к Масхадову с просьбой о политическом убе


1-1085283375
Demik
2004-05-23 07:36
2004.06.06
Ресурсы -> как работать с ресурсами


14-1084962548
Романов Р.В.
2004-05-19 14:29
2004.06.06
Покритикуйте код