AssignFile initialisiert die Dateivariable und trägt dort
nur den Dateinamen ein.
Öffnen muß man die Datei dann immernoch (Reset, Rewrite oder Append).
Schau also mal in der
OH nach, was Reset überhaupt macht.
PS: Nur eine Frage pro Thread. (damit hier nichts durcheinander kommt)
Such aber mal im Forum nach "relativen Dateipfaden".
ExtractFilePath(ParamStr(0))
oder
ExtractFilePath(Application.ExeName)
gibt die den Pfad zu deiner EXE, wo du nun einfach deinen gewünschten Dateinamen und relativen Pfad anhängen kannst.