Ich persönlich finde das so richtig. Die EFOpenError-
Exception behandeln heißt: Geht nüscht, kann nicht lesen. Ist wohl jemand anderes exklusiv drauf.
Wenn du auf der
Exception anhälst siehst du auch dass der auch nur CreateFile(..) aus der
WinApi aufgerufen und
INVALID_HANDLE_VALUE
zurückbekommen hat. Das kannst du natürlich auch noch einmal von hand machen, aber was hat man dadurch gewonnen?
Und von der theoretischen Möglichkeit dass sich jemand die Datei
zwischen deiner Überprüfung
und dem Versuch die Datei dann tatsächlich zu öffnen dann schnappt wollen wir erst gar nicht sprechen