![]() |
Delphi [TStream]
...# Delphi [TStream] #... Требуется: Простите за столь глупую просьбу, но приведите пожалуйста пример передачи содержимого компонента через TStream или TMemoryStream, связка клиент - сервер, Winsock, Socket, IdUdp неважно, и вывод его сразу на аналогичный компонент без сохранения на жестком диске даже в виде временных файлов. Пояснение: Просто, какая-то странность, сохраняю содержимое компонента в поток, проверяю размер потока, все нормально, отправляю поток по запросу клиента на сервер, на сервер ничего не приходит. Если сохранять через TFileStream и отправлять через него то все работает, но только это дополнительная нагрузка на систему: записывать на винт --> отсылать --> удалять с винта. Уточнение: Пожалуйста приведите пример, компонент может быть любой, но для примера допустим пусть будет содержимое Image.Picture За ранее большое спасибо. (PS: просьба без лишних фраз, ответы писать по теме, пожалуйста) |
Приведи пример кода.
|
Простите, ночую у родителей, но вот код для примера, который должен на мой взгляд работать.
Код для сервера: PHP код:
PHP код:
|
Вместо
RuSrm := TStream.Create; нужно RuSrm := TMemoryStream.Create; из хелпа: TStream is an abstract or, in C++ terminology, pure virtual class. It should not be instantiated; it relies on abstract or pure virtual methods that must be overridden in descendant classes. Да, и еще, перед вызовом SendStream нужно поставить текущую позицию потока в ноль: RuSrm.Seek(0, soFromBeginning); Socket.SendStream(RuSrm); |
Цитата:
Цитата:
|
| Время: 09:00 |