type
TRGBA:array[0..3] of byte;
Tpixelarray:array of TRGBA;
componentimde
property farraylist:Tpixelarray; tipinde bi alanım var. ben bu alana tasarım modunda iken değer atıyorum ve bu değer calışma modunda doğal olarak
aynı değeri alması lazım. bu işlemi delphi basit ve onceden tanımlı ozellikler(string,integer vs..) icin otomatik olarak yapıyor ama kulanıcının tanımlamış olduğu farklı ozellikler(array lar vs..) icin kulanıcının kendisi yazması lazım .bunun icinde ozellik yazıcımla okuyucumu kendim belirlemem lazım ve belirledimde ama nedense hafıza hatası veriyo
yazmada sorun yok ama okuma modunda hata oluyo sorunnerde bilen varmı cok onemli benim icin bu.yardım ederseniz cok seviniceğim.

procedure T3defectitem.DefineProperties(Filer: TFiler);
function DoWrite: Boolean;
begin
if Filer.Ancestor nil then
begin
if T3defectitem(Filer.Ancestor).pixeller = nil then
Result := pixeller nil
else if pixeller= nil then
Result := True

else Result := False;
end
else
Result := T3defectitem nil;
end;


begin
inherited;

Filer.DefineBinaryProperty('pixeller',readpixel,wr itepixel, dowrite);
end;

procedure T3defectitem.readpixel(stream: TStream);
begin

stream.read(pixelsize, SizeOf(integer));
SetLength(Fpixeller,pixelsize);
stream.read(fpixeller, pixelsize*4*sizeof(byte));
end;

procedure T3defectitem.writepixel(stream: TStream);
begin
stream.Write(pixelsize, SizeOf(integer));
stream.Write(fpixeller, pixelsize*4*sizeof(byte));
end;
__________________