Und das mit dem Verstehen ist ja auch nicht so schwer, wenn er einen Blick auf
RaiseLastOSError wirft
Also gegen Raise an sich ist ja nichts zu sagen, auf der anderen Seite ist die Frage seit zwei Seiten - was ist bei Ini ein Defaultwert?
Außerdem, was interessiert den Endnutzer, oder gar den TE der ErrorCode 5. Das ist fast so gut wie die Frage nach dem Sinn des Lebens mit der Antwort 42. Es sollte also immer ein Text da stehen.
Wo wir aber dabei sind, ich kenne die Schreibweise
RaiseLastOSError( GetLastError, Format(' "%s"', [Dir] ) );
nicht, ist das neu > D7?