Вниз
Скачать: CL | DM;

Как выгрузить TMemoryStream в PChar?   Найти похожие ветки 

 
neteditor   (2004-05-01 22:20) [0]

Делаю так,

_MemoryStream.Position := 0;
SetLength(_ReadBuf, _MemoryStream.Size);
_MemoryStream.Read(_ReadBuf, _MemoryStream.Size);

и не работает :)


 
Jack128 ©   (2004-05-01 22:27) [1]


> и не работает :)
</> в заключается <не работает>?? память под _ReadBuf выделена???


 
Mim1 ©   (2004-05-02 08:27) [2]

with tstrintstream.create do
 try
   ms.position;
   copyfrom(ms);
   messagebox(handle,pchar(datastring),"mim",0);
 finally
   free;
 end;


 
AGin   (2004-05-02 13:18) [3]

SetLength не выделяет память для PChar, следует использовать GetMem.
Но можно использовать и строку _ReadBuf, но тогда обращение другое:

_MemoryStream.Position := 0;
SetLength(_ReadBuf, _MemoryStream.Size);
_MemoryStream.Read(_ReadBuf[1], _MemoryStream.Size);


 
NS   (2004-05-04 07:17) [4]

А зачем тебе выгружать в PChar?
Если надо обратиться к тексту в потоке используй MemoryStream.Memory - возвращает указатель на начало потока. Только не забудь добавить в поток завершающий ноль.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
14-1083007266
GEN++
2004-04-26 23:21
2004.05.16
Раскинем карты и ...... погадаем.


14-1082530579
Tefal
2004-04-21 10:56
2004.05.16
Декомпилятор


1-1083221846
Ega23
2004-04-29 10:57
2004.05.16
"Потрепаться" на "Основную" выбрасывает


3-1082553938
}|{yk
2004-04-21 17:25
2004.05.16
Создание запросов с параметрами в FIBPlus 4.8.1


9-1071754582
zzet
2003-12-18 16:36
2004.05.16
FullScreen OpenGl




   Наверх