I used this code for saving
Code: Select all
TFileStream* FS = new TFileStream(File, fmCreate);
for(int i=0;i<CompositeBeamMainForm->ComponentCount;++i)
FS->WriteComponent(CompositeBeamMainForm->Components[i]);
delete(FS);
and this code for opening
Code: Select all
TFileStream* FS = new TFileStream(FileDir_Name, fmOpenRead);
for(int i=0;i<CompositeBeamMainForm->ComponentCount;++i)
FS->ReadComponent(CompositeBeamMainForm->Components[i]);
delete(FS);
After investigating Internet, I made registrations of those classes in VCL stream system as follows:
Code: Select all
TComponentClass classes[2] = {__classid(TToolButton),__classid(TTabSheet)};
RegisterClasses(classes, 1);
What is the reason for this message? How to avoid it? Are there better ways to save forms?