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

Вниз

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

 
neteditor   (2004-03-24 19:13) [0]

Ситуация простая: есть клиентская и серверная (TTCPServer) части. Клиентская отсылает по сокету бинарный файл (размер >300K). Однако при использовании Receiveln в нити серверной части, получается получить лишь ~900 байт. После чего прием оканчивается. Клиентская часть 100% отсылает информацию в полном объеме. Используемый код


buf: AnsiString;
....
buf := "";
f := TFileStream.Create(filename, fmCreate);
repeat
 f.WriteBuffer(PChar(buf)^, Length(buf))
 buf := AnsiString( ClientSocket.Receiveln(eof) );
until buf = "";


Где eof = "####end####" (в файле данная строка не встречается)

Посоветуйте чего-нить.


 
Fredericco ©   (2004-03-24 19:27) [1]

Толи лижи, толи я. (с) ЮЗ

Какой логический смысл вот этого:

buf := AnsiString( ClientSocket.Receiveln(eof) );
until buf = "";
?
Ты ж как только чего-нить получишь, сразу получишь False в условии цикла.


 
neteditor   (2004-03-25 11:30) [2]

:)

The repeat statement executes its sequence of constituent statements continually, testing expression after each iteration. When expression returns True, the repeat statement terminates.

Но все равно спасибо :)


 
Fredericco ©   (2004-03-25 11:41) [3]

Сорри :-)


 
Fredericco ©   (2004-03-25 11:55) [4]

Я сам не инди юзаю, но может вот это поможет:

Use a custom time-out (ATimeout) value to change the number of milliseconds to wait for a response from the peer connection before a time-out occurs. The default value for ATimeout is IdTimeoutInfinite. See IdGlobal.pas for more information on constant timeout values.


 
Rouse_ ©   (2004-03-25 12:02) [5]

Приведи полный код отправки и полный код приема


 
neteditor   (2004-03-26 12:31) [6]

Надоело мучаться с TTCPServer, взял старый TServerSocket + TWinSocketStream и все работает.

Спасибо за помощь :)



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

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

Наверх




Память: 0.47 MB
Время: 0.055 c
14-1083118645
slaw
2004-04-28 06:17
2004.05.16
Интерфейс под дос


11-1069691640
Phantom
2003-11-24 19:34
2004.05.16
Динамически создать пункты Popup-меню


1-1083157764
killer
2004-04-28 17:09
2004.05.16
Сортировка в StringGrid


7-1080881145
Vitas2
2004-04-02 08:45
2004.05.16
Привязка к машине


3-1082623835
Arm79
2004-04-22 12:50
2004.05.16
прокрутка мышью в DBGrid