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

Проблема с чтением из типизированного файла   Найти похожие ветки 

← →
WLAD   (2002-08-08 03:21) [0]

Мастера подскажите! После записи в типизированный файл при последующем чтении из него из другой программой выдается сообщение об ошибке: "Access violation at address....".
При чтении из файла программой в которой он создавался происходит считывание пустых переменных. В чем проблема?


← →
Код В Студию   (2002-08-08 03:46) [1]

...


← →
Poirot ©   (2002-08-08 03:47) [2]


> Код В Студию

Желательно весь... и это не шутка...


← →
Wlad   (2002-08-08 22:32) [3]

Вот код


type tz=record
v,o:TStrings;
r:TPicture;
m:Boolean;
p:Integer;
end;
var
z:tz;
f:file of tz;

{процедура записи}
procedure SV;
begin
AssignFile(f,"~t.tmp");
Rewrite(f);
z.v:=Form2.Memo1.Lines;
z.o:=Form2.Memo2.Lines;
z.r:=Form2.Image1.Picture;
z.m:=Form2.CheckBox1.Checked;
z.p:=Form2.SpinEdit1.Value;
write(f,z);
end;

{чтение из файла}
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
Form3.Show;
if Form1.OpenDialog1.Execute then
begin
AssignFile(f,Form1.OpenDialog1.FileName);
reset(f);
read(f,z);
Form3.Memo1.Lines:=z.v;
Form3.RadioGroup1.Items:=z.o;
Form3.Image1.Picture:=z.r;
end;
end;



← →
Anatoly Podgoretsky ©   (2002-08-08 22:36) [4]

И чего ты ожидал, у тебя же в записи указатели на объекты, вот их ты и пишешь


← →
Jeer ©   (2002-08-08 22:39) [5]

Начнем с того, что вот это - ссылки.
v,o:TStrings;
r:TPicture;

Ну запишешь ты указатели на некоторую область памяти (где храняться собственно стринги и image) - ну и что дальше ?
Как при чтении (и кто) должен догадаться, что по этому адресу когда-то существовало ?


← →
Wlad   (2002-08-08 22:47) [6]

Спасибо!
А как правильно?


← →
Юрий Зотов ©   (2002-08-08 22:55) [7]

А правильно писать все в поток, а потом сохранять этот поток на диск. См. класс TStream, а также TStrings.SaveToStream и TPicture.Bitmap.SaveToStream.


← →
Wlad ©   (2002-08-08 23:00) [8]

Пошел смотреть.



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

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



Память: 0.46 MB
Время: 0.008 c
7-60875
Демон
2002-05-31 21:39
2002.08.19
Отключить унопочку Wыньdows


6-60766
Guardian
2002-06-05 06:41
2002.08.19
NMFTP


4-60916
darkin
2002-06-16 12:31
2002.08.19
как копировать файлы....???


1-60638
WLAD
2002-08-08 03:21
2002.08.19
Проблема с чтением из типизированного файла


1-60612
Yuri Btr
2002-08-08 11:16
2002.08.19
Это что глюк ?




   Наверх