L' unico modo che 'mi pare' esista per spostare un file in Pascal da una directory all' altra (stessa partizione) è:
If RenameFile(PathCompleta1,PathCompleta2) then...
Il codice funziona benissimo... peccato che nel frattempo si modifica la data di creazione, che diventa quella attuale, mentre io per una serie di controlli ho bisogno che resti quella che era.
In VB.NET, per dire, la funzione 'MOVE' sposta i files senza effettuare alcuna modifica agli attributi dei files, ma se non erro non vedo funzioni analoghe in Pascal.
Qualche idea?
Se parliamo di Windows, guardando i sorgenti, mi sembra di capire che RenameFile alla fine va a richiamare una funzione del sistema operativo, quindi mi sembra strano quel comportamento.
function MoveFileW(lpExistingFileName:LPCWSTR; lpNewFileName:LPCWSTR):WINBOOL; external 'kernel32' name 'MoveFileW';
Può essere che partenza e destinazione sono su 2 dischi formattati in maniera differente?
P.S. Su Linux anni fa' mi sono scritto questo appunto:
RenameFileUTF8 fa anche la move, ma non funziona in linux se sorgente e destinazione sono su partizioni diverse.
Ciao, Mario