Застрял на ерунде, второй день мучаюсь.
TP6.
Нужно проверить наличие файла txt. Если он есть, то переименовать его в bak.
На Rename выдает Runtime error 5.
Если перед Rename добавить Close(ddd), то вылазит RTE 103.
Что делаю не так?


Var
ddd : text;

Function file_exist(name:string) : boolean;
Begin
file_exist:=false;
Assign(ddd, name);
{$I-}
Reset (ddd);
{$I+}
if IOResult=0 then begin
file_exist:=true;
end;
End;

BEGIN
if file_exist ('d10.txt') then begin
if file_exist ('d10.bak') then Erase(ddd);
Assign(ddd, 'd10.txt');
Rename(ddd, 'd10.bak');
end;
END.