Вот участок кода из предстоящей статьи о VBX/OCX, который я написал чтобы протестировать поточность своих компонентов. Если компонент поточнен, код сможет его сохранить и загрузить. В противном случае вы получите сообщение об ошибке, отладка которой сравнительна легка для определении проблем с VCL.
В действительности технология чтения и записи компонентов не так уж и сложна, убедитесь в этом сами.
procedure TForm1.StoreClick(Sender: TObject); var W: TWriter; begin W := TWriter.Create( TFileStream.Create('c:\source\delphi\example.dob', fmCreate), 4096); W.WriteSignature; W.WriteComponent(Spin); W.Free; end; procedure TForm1.LoadClick(Sender: TObject); var R: TReader; begin R := TReader.Create( TFileStream.Create('c:\source\delphi\example.dob', fmOpenRead), 4096); Spin := R.ReadRootComponent(Nil) as TSpinner; Spin.Top := 0; Spin.Left := 0; Spin.Parent := Self; InsertComponent(Spin); R.Free; end; |
===Blake=== [000493]