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

Вниз

Че та я не пойму с TMemoryStream   Найти похожие ветки 

 
MadGhost ©   (2004-02-10 23:15) [0]

выполняю следующий код.

procedure TForm1.Button1Click(Sender: TObject);
var
s:TMemoryStream;
a:string;
begin
s:=TMemoryStream.Create;
s.Write("asdasdasd",9);
s.Read(a[1],9);
Edit1.Text:=a;
end;


в результате в Edit1.Text пусто :( почему не получается записать через TMemoryStream


 
Palladin ©   (2004-02-10 23:32) [1]

перед s.Read необходимо установить позицию s.Seek(0,soBeginning)


 
Maxud ©   (2004-02-10 23:33) [2]

А так:
var s: string;
begin
with TMemoryStream.Create do
begin
Write("asd",3);
SetLength(s, 3);
Seek(0, soFromBeginning);
Read(s[1], 3);
free;
Edit1.Text := s;
end;
end;


 
MadGhost ©   (2004-02-10 23:41) [3]

спасибо, в примере из первого поста все получилось. но вот код такой же, все так же сделал, и не работает :(

procedure TForm1.NMUDP2DataReceived(Sender: TComponent;
NumberBytes: Integer; FromIP: String; Port: Integer);
var
MyStream:TMemoryStream;
TmpStr:String;
begin
MyStream:=TMemoryStream.Create;
try
NMUDP1.ReadStream(MyStream);
SetLength(TmpStr,NumberBytes);
MyStream.Seek(0,soFromBeginning);
MyStream.Read(TmpStr[1],NumberBytes);
Memo1.Lines.Add(FromIP+": "+TmpStr+"="+IntToStr(NumberBytes));
finally
MyStream.Free;
end;
StatusBar1.SimpleText:="Данные получены";
end;


 
Maxud ©   (2004-02-11 01:53) [4]

а если изменить
NMUDP 1.ReadStream(MyStream);
на
NMUDP 2.ReadStream(MyStream);
?


 
MadGhost ©   (2004-02-11 18:32) [5]

ну надо ж быть на стока тупым :))))))))))))
большое спасибо.......
вот засиделся за компом и за квакой за игрался :))))
уже такие вещи путать стал....
ещё раз большое спасибо



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-79768
CAHbI4
2004-02-11 21:41
2004.02.25
Содержимое DLL формы на форме вызывающего приложения


1-79729
Cosinus
2004-02-12 13:13
2004.02.25
Оценка оставшегося времени...


1-80012
sohat
2004-02-13 09:02
2004.02.25
Освобождение памяти TList


7-80307
--= Eagle =--
2003-12-06 09:16
2004.02.25
Как читать байты из памяти запущенной проги?


7-80338
-Barmaley-
2003-12-04 15:46
2004.02.25
Перехват обращения к COM порту.