Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.19;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.014 c
6-60764
neodiX
2002-06-04 12:28
2002.08.19
Это действительно проблема!


1-60742
SergeySA
2002-08-07 14:13
2002.08.19
как послать всем окнам сообщение , чтоб перерисовались ?


1-60686
MikeZ
2002-08-05 15:06
2002.08.19
Управление WinAmp ом


3-60502
alexvan
2002-07-28 18:32
2002.08.19
Просто, но чего-то нигде не могу найти.


1-60708
[Subway]
2002-08-05 14:41
2002.08.19
Антивирусы....