![]() |
Wo liegt der Fehler bei meiner Ini-Datei?
Hallo!
Ich habe hier mal meinen programm code:
Delphi-Quellcode:
Wenn ich das dann in meinem Programm ausführe, kann ich das speichern, die Ini Datei wird angelegt, und es steht auch alles drin, wenn ich danach aber wieder auf öffnen gehe, kommt ein Feher, ich glaub Zugriffsverletzung oder so?
procedure TFrage.FileSaveAs1Accept(Sender: TObject);
begin cl:=TIniFile.create(frage.FileSaveAs1.Dialog.FileName+'.ini'); try cl.WriteString('kopf','code',code); cl.WriteString('kopf','Geschlecht',geschl); cl.WriteString('kopf','Schule',schule); finally cl.Free; end; end; procedure TFrage.FileOpen1Accept(Sender: TObject); begin cl.Create(frage.FileOpen1.Dialog.FileName); try code:=cl.ReadString('kopf','code','Fehler aufgetreten'); geschl:=cl.ReadString('kopf','Geschlecht','Fehler aufgetreten'); schule:=cl.ReadString('kopf','Schule','Fehler aufgetreten'); finally cl.Free; end; Kann mir jemand sagen, wo der Fehler liegt? Und habt ihr noch nen tip, wie ich in dem Speichern Fenster das Dateiformat vorgeben kann? Danke Gruß Robi [edit=Daniel B]Delphi-Tags eingefügt. MfG Daniel B.[/edit] |
das kommt darauf an wozu du die datei öffenen willst:
zum anhängen von dateien oder zum lesen, je nach dem brauchst du einen anderen befehl! |
Hallo,
mach doch beim LAden, vor dem letzten end; noch eins hin, das wäre fürs try..finally. Ausserdem wäre es besser statt cl.Free;, FreeAndNil(cl); zu nehmen, in beiden Prozeduren. Grüsse, Daniel :hi: |
Wie zum Anhängen oder Lesen?
Erstmal danke für die schnelle Antwort!
Also um es noch mal ganz genau zu beschreiben, ich habe ein Programm, bei dem ich verschiedene Werte speichern will, allerdings jedesmal in eine andere Datei. Später, will ich dann eine von den erstellten Datei wieder öffnen, die Werte in einem Fenster anzeigen lassen und mit den Werten weiterarbeiten. Ist das überhaupt mit der Read anweisung machbar? Und nochmal, den Dateityp im Speichern-Unter-Fenstern, wo kann ich den denn festlegen? Danke Gruß Robi P.S.: das letzte end hatte ich nur vergessen zu kopieren. |
Du meinst den Dialog Speichern unter, oder?
Dann kuck dir mal das Property Filter an |
Moin Robi,
beim auslesen der Datei wird das Objekt nicht erzeugt:
Delphi-Quellcode:
// Schreiben
// Richtig. Hier wird einer Objektvariablen (vom Typ TIniFile oder einer Ableitung davon) // das erzeugte Objekt übergeben cl:=TIniFile.create(frage.FileSaveAs1.Dialog.FileName+'.ini'); // Lesen // Falsch. Hier versuchst Du die Create Methode eines Objektes aufzurufen, auf das die Variable cl verweist // Da diese wohl vom richtigen Typ ist hat der Compiler auch nichts dageben, aber zur Laufzeit // ist dort nichts und der Zugriff ereugt die Exception cl.Create(frage.FileOpen1.Dialog.FileName); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz