Набросал нечто подобное, глюков нет. Вот это работает нормально:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
f: file;
begin
AssignFile( f, GetCurrentDir + '\1.tmp' );
if FileExists( GetCurrentDir + '\1.tmp' ) then
DeleteFile( GetCurrentDir + '\1.tmp' );
Rewrite( f );
CloseFile( f );
end;
Причина ошибки скорее всего в чем то другом, покажи весь код...