Funzione RemoveDirectoryA (fileapi.h)
Elimina una directory vuota esistente.
Per eseguire questa operazione come operazione transazionale, usare la funzione RemoveDirectoryTransacted .
Sintassi
BOOL RemoveDirectoryA(
[in] LPCSTR lpPathName
);
Parametri
[in] lpPathName
Percorso della directory da rimuovere. Questo percorso deve specificare una directory vuota e il processo chiamante deve avere l'accesso alla directory.
Per impostazione predefinita, il nome è limitato a MAX_PATH caratteri. Per estendere questo limite a 32.767 caratteri wide, prependo "\\?\" al percorso. Per altre informazioni, vedere Denominazione di file, percorsi e spazi dei nomi.
Suggerimento
A partire da Windows 10, versione 1607, è possibile scegliere di rimuovere la limitazione MAX_PATH senza pre sospeso "\\?\". Per informazioni dettagliate, vedere la sezione "Limitazione massima lunghezza percorso" di nomi, 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 informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
La funzione RemoveDirectory contrassegna una directory per l'eliminazione in chiusura. Pertanto, la directory non viene rimossa fino all'ultimo handle della directory chiusa.
Per eliminare in modo ricorsivo i file in una directory, usare la funzione SHFileOperation .
RemoveDirectory può essere usato per rimuovere una giunzione della directory. Poiché la directory di destinazione e il relativo contenuto rimarranno accessibili tramite il percorso canonico, la directory di destinazione stessa non è influenzata dalla rimozione di una giunzione che lo destinazione. Per questo motivo, quando lpPathName fa riferimento a una giunzione di directory, RemoveDirectory rimuoverà il collegamento specificato indipendentemente dal fatto che la directory di destinazione sia vuota o meno. Per altre informazioni sulle giunzioni, vedere Collegamenti rigidi e giunzioni.
L'uso dell'eliminazione POSIX causa l'eliminazione della directory mentre gli handle rimangono aperti. Le chiamate successive a CreateDirectory per aprire la directory non riescono con ERROR_FILE_NOT_FOUND.
In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti:
Tecnologia | Supportato |
---|---|
Protocollo SMB (Server Message Block) 3.0 | Sì |
Failover trasparente SMB 3.0 (TFO) | Sì |
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) | Sì |
File system del volume condiviso del cluster (CsvFS) | Sì |
File system resiliente (ReFS) | Sì |
Nota
L'intestazione fileapi.h definisce RemoveDirectory 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 di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | fileapi.h (includere Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |
Vedere anche
Creazione ed eliminazione di directory