Обрати внимание на закомментированный Reset! :!: Убери - и глюк исчезнет
И еще, при проверке считывания данных отведи под это дело другую переменную. Так можно сразу определить, читает прога или нет, и что она читает.
type
Tmyc = class (tobject)
i: integer;
s: string;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
src, dst: TMyClass;
my_file: file of TMyClass;
begin
src := Tmyc.Create;
src.s := '1wwe';
src.i := 936;
AssignFile(my_file, 'tmp.dat');
// Reset(my_file);
Rewrite(my_file);
Write(my_file, src);
CloseFile(my_file);
AssignFile(my_file, 'tmp.dat');
Reset(my_file);
Read(my_file, src);
CloseFile(my_file);
end;
оказалось, что в файл кидает только указательна класс, и соответственно читает по этому указателю - т.е. то что сейчас в этом классе.
Ну, не знаю, где там указатели...
Что-то ты, похоже, напутал...