machs doch mit nem tfilestream, des ists beste.
Delphi-Quellcode:
fs := tfilestream.create('dateiname', fmcreate);
fs.write(form1.left, sizeof(integer));
fs.write(form1.top, sizeof(integer));
fs.write(form2.left, sizeof(integer));
{usw.}
fs.free;
//lesen:
fs := tfilestream.create('dateiname', fmOpenRead or fmShareDenyNone);
fs.seek(0, soFromBeginning); //musst mal teste vielleicht isses auch beim öffnen schon an anfang gespult dann kannst des weglassen.
fs.read(form1.left, sizeof(integer));
fs.read(form1.top, sizeof(integer));
fs.read(form2.left, sizeof(integer));
//ich habs net getestet, kann sein dass du so dem "form1.top" kein wert zuweisen kannst, in dem fall muss du halt:
fs.read(I{<- integer-variable}, sizeof(integer));
form1.left := I;
//schreiben.
fs.free;
der vorteil hier ist natürlich der dasses erstens schnell ist und zweitens wenig speicherplatz braucht, für jeden integer-wert den du speicherst werden lediglich 4 byte belegt.
(man kanns dafür nur noch mit nem hex-editor gscheit lesen)