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




Вниз

Вопрос по Sockets API 


SineD   (2001-10-09 17:48) [0]

Люди подскажите как получить количество принятых байт функцией
recv(socket,buf,buflen,flags);



Polevi   (2001-10-09 17:58) [1]

Return Values

If no error occurs, recv returns the number of bytes received. If the connection has been gracefully closed, the return value is zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific error code can be retrieved by calling WSAGetLastError.



SineD   (2001-10-09 18:06) [2]

Ни фига !
Если размер принятого сообщения больше buflen, то результат будет равен buflen, И КАК дальше получить размер непринятого куска ?



Polevi   (2001-10-09 22:22) [3]

Размер непринятого куска будет равен количеству байт в сокете -
ioctlsocket(FSocket, FIONREAD, Longint(Result))

смотри scktcomp.pas



Digitman   (2001-10-10 08:33) [4]

>SineD
Polevi прав - общий размер поточных данных, доступных для чтения из буфера приема гнезда, можно (и нужно) определять именно таким способом.
Повторюсь : при любых вопросах по гнездовому взаимодействию распределенных процессов наилучший способ получить ответ - изучить, как это делается в scktcomp.pas.



SineD   (2001-10-10 11:52) [5]

Спасибо !
Понял.




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




Наверх





Память: 0.72 MB
Время: 0.054 c
14-22399          McSimm                2001-11-11 12:01  2002.01.08  
Форматирование в ответах


3-21918           SVS                   2001-12-04 13:11  2002.01.08  
заполнение OleContainer из BlobField


4-22497           Syrius                2001-11-07 09:13  2002.01.08  
Delphi 6 и Win32 API


7-22423           Alex_K_xelA           2001-09-21 18:55  2002.01.08  
Чтение секторов с CD-ROM


3-21952           S_King                2001-12-04 10:18  2002.01.08  
Определить первый свободный ID