Nichts ist älter als der Status von eben
Eben war die datei noch zu öffnen und jetzt, wo du sie öffnen möchtest, ist die gerade gesperrt worden.
Das einfachste ist, die Datei direkt zu öffnen und auf entsprechende Fehler/Exceptions zu reagieren (z.B. x mal versuchen und dann erst mit der
Exception abbrechen).
Was du jetzt machst ist die Datei zu öffnen und wieder zu schliessen um diese dann wieder zu öffnen ...
Und eine Datei, die nicht existiert, bekommst du mit den Parametern nicht geöffnet, somit ist der Parameter
CheckIfExists
irgendwie unnütz.
If ( CheckIfExists = true ) and ...
Warum nicht viel lesbarer
if CheckIfExists and ...
?