Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Передача данных   Найти похожие ветки 

 
Victor!   (2004-02-03 16:51) [0]

Подскажите какой компонент лучше использовать для передачи данных больших обьемов по сети. Или как правильно использовать TServerSocket и TClientSocket, а то при посылке данных (с помощью SendBuf) больше чем 8kb они делются по 8kb на стороне сервера, а на стороне клиента не правильно собираются.


 
Digitman ©   (2004-02-03 17:07) [1]

TServerSocket и TClientSocket


 
Victor!   (2004-02-03 18:05) [2]

Ай спасибо! Но вот проблема: при посылке TServerSocket.Socket.SendBuf() данных более 4Kb(в 98-й) и 8kb(в 2000), ?kb(в другой винде) при приёме, оно разбивает данные на сервере и соединяет их на клиенте непонятным образом.
Т.е. например посылаются данные:

111111111111111111111111111111...
\---4kb---/\---4kb---/\---4kb-...

оно принимает

1111111111111111~~~~~111111~~~~~1111...     ~ - нули
\---4kb---/\---4kb---/\---4kb---/\--...

Причём нули вставляются каждый раз в разных местах и кусками разного размера.

Вопрос: КАК этого избежать? ИЛИ есть ли какая-нибудь компонента, в которой такого маразма нету?


 
panov ©   (2004-02-03 18:20) [3]

>Victor!   (03.02.04 18:05) [2]

У тебя ошибка в реализации или алгоритме.


 
Dimaz-z ©   (2004-02-03 18:30) [4]

У меня мысля есть - кодировать все файлы при помощи Base64 в текст, потом это отсылать, склеивать (http://delphibase.endimus.ru/?action=viewtopic&topic=nettransfer), и потом на другой стороне преобразовывать в файлы...


 
Verg ©   (2004-02-03 18:31) [5]


>  оно разбивает данные на сервере и соединяет их на клиенте
> непонятным образом.


Оно конечно разбивает (его право), но вот оно уж точно ничего не соединяет. Соединить обратно (а это несложно) - это твоя задача. Оно только гарантирует, что последовательность фрагментов на приемной строне будет правильной, а данные абсолютно достоверны. Сколько и какие переданы - точно те же и столько же будут приняты и в той же последовательности, если факт установленного соединения имеет место быть.
Ни о каких вставках, никаких нулей речи уж быть не может - это стопудово.



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

Форум: "Сети";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.038 c
7-1079648951
dim-
2004-03-19 01:29
2004.04.11
Проблема с получением данных с COM порта


14-1082120862
Wiz@rd
2004-04-16 17:07
2004.04.11
IdPortMapper на WinAPI


1-1079945518
Grihan
2004-03-22 11:51
2004.04.11
Доступ к событиям вложенного объекта через инспектор объектов.


7-1075779916
dr Tr0jan
2004-02-03 06:45
2004.04.11
Команды RunDLL32 в Win2k/XP!


6-1079627338
Neznayka
2004-03-18 19:28
2004.04.11
Управление клиентом





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский