Главная страница
    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.45 MB
Время: 0.032 c
14-1083088406
УНЯ
2004-04-27 21:53
2004.05.16
ЕСЕМЕСки


11-1069790916
=Sniper=
2003-11-25 23:08
2004.05.16
RichEdit1.WordWrap? Это глюк?


1-1082997070
ZedeS
2004-04-26 20:31
2004.05.16
Побайтное чтение файла


3-1082186699
Makaron
2004-04-17 11:24
2004.05.16
Как печатать QRGroup с новой страницы?


1-1083276815
Dumnok
2004-04-30 02:13
2004.05.16
Версия exe-файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский