Condividi tramite


Funzione RemoveDirectoryA (fileapi.h)

Elimina una directory vuota esistente.

Per eseguire questa operazione come operazione transazionata, 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 accesso eliminato alla directory.

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 RemoveDirectory contrassegna una directory per l'eliminazione alla chiusura. Pertanto, la directory non viene rimossa finché l'ultimo handle della directory non viene chiuso.

Per eliminare in modo ricorsivo i file in una directory, usare la funzione SHFileOperation.

RemoveDirectory può essere usato per rimuovere una giunzione di directory. Poiché la directory di destinazione e il relativo contenuto rimarranno accessibili tramite il relativo percorso canonico, la directory di destinazione stessa non è influenzata dalla rimozione di una giunzione destinata a essa. 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 determina l'eliminazione della directory mentre gli handle rimangono aperti. Le chiamate successive a CreateDirectory per aprire la directory hanno esito negativo con ERROR_FILE_NOT_FOUND.

In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti:

Tecnologia Sostenuto
Protocollo SMB (Server Message Block) 3.0
SMB 3.0 Transparent Failover (TFO)
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO)
Cluster Shared Volume File System (CsvFS)
Resilient File System (ReFS)

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 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 [app desktop | App UWP]
server minimo supportato Windows Server 2003 [app desktop | App UWP]
piattaforma di destinazione Finestre
intestazione fileapi.h (include Windows.h)
libreria Kernel32.lib
dll Kernel32.dll

Vedere anche

CreateDirectory

creazione ed eliminazione di directory

funzioni di gestione directory di

RemoveDirectoryTransacted