Laden von *.ini Datei
-
Hallo alle zusammen,
ich habe wieder mal ein Problem.
Im OnCreate im Hauptformular hatte ich folgenes geschrieben://Wenn die Datei existiert dann laden if (FileExists(ExtractFilePath(Application->ExeName)+"Backup_q.ini")) { ListBox1->Items->LoadFromFile(ExtractFilePath(Application->ExeName)+"Backup_q.ini"); } else { MessageDlg("\"Backup_q.ini\" wurde nicht gefunden!", mtWarning,TMsgDlgButtons() << mbOK,0); }Mein Problem ist dass auch wenn Bedingung in if() nicht war ist, wird laden der Datei trotzdem ausgeführt, was natürlich bei nicht existierende Datei zu einer Speicherzugriffsverletzung führt.
Hat jemand Ahnung warum das nicht funktioniert?
-
Hallo
Ich bezweifle das die Bedingung nicht korrekt gewertet wird. Das würde ja bedeuten das der Borland-Compiler bei der Behandlung vom if fehlerhaft ist.
Desweiteren deutet bei nicht existierende Datei zu einer Speicherverletzung führt. auf ein ganz anders Problem hin. Denn bei nichtvorhandener Datei kommt bei LoadFromFile eine entsprechende Fehlermeldung, aber kein Speicherzugriffsfehler.Benutzt den Debugger und verfolge den tatsächlichen Verlauf des Proramms, und werte Variablen aus. Irgendwo greifst du auf ungültigen Speicher zu. Desweietren kannst du auch aus diesem Codeausschnitt ein Minimalbeispiel zusammenbauen und nachprüfen.
bis bald
akari