Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно получить(отправить) TMemoryStream используя TNMUDP? [D6, Win95/98]


Егоров Николай ©   (2002-06-15 19:37:00) 

В своём приложении я использую TNMUDP.
Мне необходимо отправлять/получать TMemoryStream.
Ситуация такова:

Отправляю поток, используя метод SendStream класса TNMUDP:
NMUDP1.SendStream(TestStream);

Принимаю (в событии OnDataReceived кл. TNMUDP):
NMUDP1.ReadStream(TestStream2);

TestStream и TestStream2 описаны как TMemoryStream.

Всё работает замечательно, при условии, что размер TestStream
не превышает ~2Kb. При превышении этого лимита возникает ошибка
чтения памяти.

Может, я что-то делаю неправильно?

В форуме нашёл интересный код:
Простой способ отправки файлов при помощи TClientSocket & TServerSocket
но мне кажется, он не вполне универсален(может я не прав?).

Возможно кто-то уже сталкивался с такой проблемой.
Подскажите в чём тут загвоздка и как заставить работать
приложение корректно?

Заранее благодарен.


Егоров Николай   (2002-06-20 06:01:00) [1]

Спасибо!!!
Помогли....
:)


Егоров Николай   (2002-06-18 18:17:00) [2]

Может резать этот стрим на части?


Егоров Николай   (2002-06-18 18:16:00) [3]

???


Егоров Николай   (2002-06-18 07:19:00) [4]

Плиз хелп!
Как решить задачу передачи потока( TMemoryStream) данных больших размеров( до 60Мб) по сетке?
Неужели ни у кого нет ни каких идей? :(


Александр Богданов   (2002-06-16 15:07:00) [5]

никак не решишь - этот глюк в компонентах зашит и его не исправишь только время потеряешь.
бери компоненты indy и аккуратно прикручивай в свой проект, чтоб сильно много переделывать не пришлось.


Егоров Николай   (2002-06-16 11:21:00) [6]

Да, TNMStrm и TNMStrmServ - тоже неплохо.
Однако, при их использовании, тоже существует лимит - ~9Mb.
Т.е. поток размером свыше ~9Mb отправить неудаётся!
Сам проверял, почему я и обратился на форум. А TNMUDP - наиболее подходящий для меня вариант. Но если кто-нибудь знает, как решить данную задачу в любом из вариантов (TNMUDP - TNMStrm/TNMStrmSer) пожалуйста напишите...

Или ссылочку какую-нибудь дайте, пожалуйста...


Storm   (2002-06-16 02:08:00) [7]

А почему бы не использовать TNMStrm, TNMStrmServ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо