Mit {$I-} werden keine Exceptions ausgelöst.
Zitat:
ShowMessage('Datei konnte nicht gefunden werden!');
Aber wie bei den Exceptions,
mit einem SchoMessage den Fehler mit einer sinnlosen Meldung zu überschreiben, wer das macht, gehört gesteinigt.
Hier sagt IOResult warum es nicht ging und genau das sollte man auch anzeigen,
denn es kann z.B. auch heißen geht nicht, weil ungenügend Rechte oder weil Datei bereits geöffnet.
Also ganz im Ernst, lass der {$I-} weg und lass das System die richtige Fehlermeldung anzeigen.