Hi Leute, folgendes Problem:
Ich hab bei meinem Programm 2 integer Werte. Diese möchte ich, wenn ich das Programm beende speichern um sie beim nächsten Start wieder zu verwenden. Bisher hatte ich das Problem gelöst, indem ich die Werte mit writeln(wert1) writeln(wert2) in eine .txt Datei geschrieben habe um diese dann mit readln... auszulesen. Folgende Probleme:
1. Der Benutzter kann die Werte einfach so ändern (cheaten)!
2. Wenn ich das Programm auf einem anderem Rechner ausführe bekomme ich einen E/A 103 Fehler.
Momentan sieht der Code so aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| FAPPath := ExtractFilePath(ParamStr(0)); if fileexists(opendialog1.FileName) then begin assignfile(Datei, FAPPath + 'Highscore.txt'); reset(Datei); readln(Datei, HighscoreS); readln(Datei, LVLS); CloseFile(Datei); end; if fileexists(opendialog1.FileName) then begin Rewrite(Datei); WriteLn(Datei, HighscoreS); WriteLn(Datei, LVL.Tag); CloseFile(Datei); end; |
Meine Idee war jetzt folgende:
Eine string Tabelle in meiner .rc Datei anzulegen, um die Werte dort zu speichern und zu bearbeiten. Allerdings weiß ich nicht, ob das wirklich der beste Weg ist.
Außerdem könnten die Werte leicht größer als 1048576, aber ich weiß nicht ob das ein Problem darstellt. Sollte mein vorgeschlagener Weg der beste sein, dann verratet mir doch bitte die Befehle.
Vielen Dank, Grüße Sylvus
//edit
hab grad gesehen, dass mein Thema vielleicht besser in die Rubrik "Dateizugriff" passt, könnte es jemand mal verschieben? (wenn schon keiner antwortet)
