Mit
TIniFile.Create erstellst Du nur das Objekt.
Da wird noch kein File auf der Platte angelegt.
Erst eine Write-Funktion (WriteInteger, WriteString, usw) sorgt dafür, dass in das File geschrieben wird.
Existiert das File noch nicht, wird es angelegt.
Und warum verwendest Du
FreeAndNil?
Besser wäre hier
ini.Free.
Den Namen für das ini-File kannst Du hiermit relativ elegant bekommen.
Das ini-File heisst dann wie die Exe der Applikation, nur eben als Dateierweiterung .ini.
Delphi-Quellcode:
var
IniFile: TIniFile;
begin
IniFileName := ExtractFilePath(Application.ExeName) + ExtractFileName(Application.ExeName);
IniFileName := ChangeFileExt(IniFileName, '.ini');
IniFile := TIniFile.Create(IniFileName);
...
...
IniFile.Free;
end;
/edit:
Ich sehe gerade, dass Du vermutlich das FormLayout (Position, Grösse, usw) speichern willst.
Dazu gibt es eine Komponente, die das macht.
Bei den RxKomponenten (mittlerweile bei der JVCL dabei, gibt ea aber auch noch einzeln) ist das
TFormPlacement und
TFormStorage dabei.
Die können das FormLayout in ein ini oder in die Registry schreiben und auch wieder auslesen.
Komponente auf das Form ziehen, konfigurieren und der Rest geht automatisch.
Einfach mal anschauen...
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.