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

Вниз

Можно ли добавить строку в поток   Найти похожие ветки 

 
Cut'gun ©   (2006-03-02 11:13) [0]

Здраствуйте!
У меня следующий вопрос можно ли после того как мы присвоили потоку TMemoryStream что-либо дописать несколько символов в начале потока. Попробовал метод Write, но он кажется заменяет то что уже записано. Есть подозрение что можно попробовать по ссылке или использовать SendMessage с соответсвенными флагами, но я в этом пока не силён =(. Если возможно ответ снабдите каим нибудь примером кода. Заранее спасибо.


 
TUser ©   (2006-03-02 11:55) [1]

Не тестировал

procedure Insert (Str: TStream; Position: integer;
                 const Buffer; Count: integer);
var b: array of byte;
   n: integer;
begin
 n := Str.Size - Position;
 Str.Size := Str.Size + Count;
 SetLength (b, n);
 Str.Position := Position;
 Str.ReadBuffer (b[0], n);
 Str.Position := Position;
 Str.WriteBuffer (Buffer, Count);
 Str.WriteBuffer (b, n);
 SetLength (b, 0);
end;


 
MBo ©   (2006-03-02 12:38) [2]

> дописать несколько символов в начале потока.
нельзя. Только с использованием доп. потока или временного буфера.


 
Гаврила ©   (2006-03-02 12:56) [3]


> MBo ©

Функция move нормально отработает и при частичном совпадении буферов


 
Cut'gun ©   (2006-03-02 13:02) [4]

2MBo
> с использованием доп. потока или временного буфера.
Т.е. я так понял есть способ склеить два потока?
Можно пример кода?


 
MBo ©   (2006-03-02 13:11) [5]

>Гаврила ©   (02.03.06 12:56) [3]
Да, тоже вариант.

>Т.е. я так понял есть способ склеить два потока?
>Можно пример кода?
см. метод TStream.CopyFrom



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
6-1134394900
user51
2005-12-12 16:41
2006.04.02
как обратися к сокету зная SocketHandle


1-1141135536
Kacnep
2006-02-28 17:05
2006.04.02
Отследить запуск DLL


4-1137272874
Delphi_is_cool
2006-01-15 00:07
2006.04.02
Убрать края у окна


15-1141841936
QuasiLamo
2006-03-08 21:18
2006.04.02
runtime-редактор ресурсов


1-1141332630
Gear
2006-03-02 23:50
2006.04.02
Блокирование запуска чужого приложения во время исполнения ...