Funzione MoveFileA (winbase.h)
Sposta un file esistente o una directory, inclusi i relativi elementi figlio.
Per specificare come spostare il file, usare la funzione MoveFileEx
Per eseguire questa operazione come operazione transazionata, usare la funzione MoveFileTransacted
Sintassi
BOOL MoveFileA(
[in] LPCSTR lpExistingFileName,
[in] LPCSTR lpNewFileName
);
Parametri
[in] lpExistingFileName
Nome corrente del file o della directory nel computer locale.
Per impostazione predefinita, il nome è limitato a MAX_PATH caratteri. Per estendere questo limite a 32.767 caratteri wide, anteporre "\\?\" al percorso. Per altre informazioni, vedere denominazione di file, percorsi e spazi dei nomi.
Mancia
A partire da Windows 10, versione 1607, è possibile acconsentire esplicitamente alla rimozione della limitazione MAX_PATH senza anteporre "\\?\". Per informazioni dettagliate, vedere la sezione "Limitazione massima della lunghezza del percorso" di nomi, percorsi e spazi dei nomi.
[in] lpNewFileName
Nuovo nome per il file o la directory. Il nuovo nome non deve esistere già. Un nuovo file può trovarsi in un file system o in un'unità diversa. Una nuova directory deve trovarsi nella stessa unità.
Per impostazione predefinita, il nome è limitato a MAX_PATH caratteri. Per estendere questo limite a 32.767 caratteri wide, anteporre "\\?\" al percorso. Per altre informazioni, vedere denominazione di file, percorsi e spazi dei nomi.
Mancia
A partire da Windows 10, versione 1607, è possibile acconsentire esplicitamente alla rimozione della limitazione MAX_PATH senza anteporre "\\?\". Per informazioni dettagliate, vedere la sezione "Limitazione massima della lunghezza del percorso" di nomi, percorsi e spazi dei nomi.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per ottenere informazioni estese sull'errore, chiamare GetLastError.
Osservazioni
La funzione MoveFile
Se un file viene spostato tra volumi, MoveFile non sposta il descrittore di sicurezza con il file. Al file verrà assegnato il descrittore di sicurezza predefinito nella directory di destinazione.
La funzione MoveFile coordina l'operazione con il servizio di rilevamento dei collegamenti, in modo che le origini di collegamento possano essere rilevate man mano che vengono spostate.
In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.
Tecnologia | Sostenuto |
---|---|
Protocollo SMB (Server Message Block) 3.0 | Sì |
SMB 3.0 Transparent Failover (TFO) | Vedere il commento |
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) | Vedere il commento |
Cluster Shared Volume File System (CsvFS) | Sì |
Resilient File System (ReFS) | Sì |
SMB 3.0 non supporta la ridenominazione di flussi di dati alternativi nelle condivisioni file con funzionalità di disponibilità continua.
Nota
L'intestazione winbase.h definisce MoveFile come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows XP [solo app desktop] |
server minimo supportato | Windows Server 2003 [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
winbase.h (include Windows.h) |
libreria |
Kernel32.lib |
dll | Kernel32.dll |