Über die Art und Weise wie man Exceptions behandelt, wirst du sicher mehrere Meinungen bekommen, und jeder ist überzeugt, er macht es richtig. Meine Meinung ist: Wenn es nichts "zu behandeln" gibt, dann musst du dem User die
Exception zeigen, weil du ja selber nicht darauf reagieren kannst. Aber, wegen dem "Zeigen" schmiert noch lange kein Programm ab.
Bei Exceptions stellt sich doch immer zuerst die Frage, wer hat sie verursacht? In diesem Fall ist die Frage relativ einfach zu beantworten: Du! Denn, wenn ein Dateizugriff das erste mal funktioniert, und das zweite mal nicht, dann hast du irgendwo einen Bug produziert, und der sollte/muss weg. Wenn du dich nicht darum kümmerst, kann das unangenehme Folgen haben.
Ich hatte noch keinen Kontakt mit FreePascal oder Lazarus, aber da gibt es doch sicher auch einen Debugger. Was kommt denn dabei raus, wenn du wie von mir vorgeschlagen mit {$Q+,R+, D+, L+} compilierst?
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen