An der Stelle ist das
Exit;
natürlich nutzlos, aber egal.
Zitat:
MessageDlg('Incorrect path', mtError, [mbOK], 0);
Aber für sowas gehört man mindestens, von diesem alten Typen grade, total den Popo versohlt bekommen.
Es darf NIEMALS NICHT eine Fehlermmeldung durch einen sinnlosen Text ersetze werden
Es gibt hier garkeinen Grund, für deinen Dialog und das ganze Try-Except kann man ganz weglassen.
Erstmal bekommt man dann wieder eine "ordentliche" Fehlermeldung.
Wenn, dann nimmt man E.Message mit in die Fehlermeldung oder speichert es zumindestens in einem Log.
* Einfach verwerfen ist grob fahrlässig.
* und natürlich kann man auch den Dateinamen nochmal im Log/Fehlermeldung anzeigen
Und wie kommmst auf die Idee, der Pfad könnte inkorrekt sein?
* wie bereits gesagt ist E/A-Fehler 32 = ERROR_
SHARING_VIOLATION.
* Ist der OpenFileDialog richtig eingestellt, kann garkein falscher Pfad rauskommen.
* und was ist, wenn der Pfad zwar gültig ist, aber der Pfad oder die Datei genicht existiert oder oder du hast keinen Zugriff (fehlende Leserechte) oder jemand hat die Datei und fehlende SharingRechte oder der Datenträger ist kaputt (Lesefeheler)
* Warum 0 anstatt z.B. mtError?