Okay now it is all clear. Contradicting with previous finding, in macOS renamefile works in one partition. I missed then due to an other fault I did not notice due to a problem with the debugger. The copyfile flag cffPreserveTime makes an elegant solution possible for more then one partition:
Movefile for more then one partition:
{$ifdef mswindows}
// succ:=movefile(pchar(filename2),pchar(thepath+'\'+extractfilename(filename2)));
succ:=renamefile(filename2,thepath+'\'+extractfilename(filename2));//rename works the same as movefile
{$else} {Linux, Darwin}
succ:=copyfile(filename2,thepath+'/'+extractfilename(filename2), [cffPreserveTime]); //works for more then one partition.
if succ then
succ:=deletefile(filename2);
{$endif}
For Windows I don't see a difference between movefile and renamefile so you can use both.
Movefile for a single partition:
{$ifdef mswindows}
// succ:=movefile(pchar(filename2),pchar(thepath+'\'+extractfilename(filename2)));
succ:=renamefile(filename2,thepath+'\'+extractfilename(filename2))
{$else} {Linux, Darwin}
succ:=renamefile(filename2,thepath+'/'+extractfilename(filename2));
{$endif}