Renamefile ändert am Problem aber garnichts.
Das Einzige, was man sich hier erspart, ist die String->PChar-Konvertierung.
Delphi-Quellcode:
function RenameFile(const OldName, NewName: string): Boolean;
begin
{$IFDEF MSWINDOWS}
Result := MoveFile(PChar(OldName), PChar(NewName));
{$ENDIF MSWINDOWS}
...
end;
IOUtils (seit XE, XE2 oder so):
TFile.Move('SourceFileName', 'DestFileName');
Das ist eine Prozedur, wo auch gleich die Fehlerbehandlung mit eingebaut ist, also eine
Exception, wenn es Probleme gab.