Condividi tramite


Funzione GetDiskFreeSpaceExA (fileapi.h)

Recupera informazioni sulla quantità di spazio disponibile in un volume su disco, ovvero la quantità totale di spazio, la quantità totale di spazio disponibile e la quantità totale di spazio disponibile per l'utente associato al thread chiamante.

Sintassi

BOOL GetDiskFreeSpaceExA(
  [in, optional]  LPCSTR          lpDirectoryName,
  [out, optional] PULARGE_INTEGER lpFreeBytesAvailableToCaller,
  [out, optional] PULARGE_INTEGER lpTotalNumberOfBytes,
  [out, optional] PULARGE_INTEGER lpTotalNumberOfFreeBytes
);

Parametri

[in, optional] lpDirectoryName

Directory sul disco.

Se questo parametro è NULL, la funzione usa la radice del disco corrente.

Se questo parametro è un nome UNC, deve includere una barra rovesciata finale, ad esempio "\\MyServer\MyShare\".

Questo parametro non deve specificare la directory radice in un disco. La funzione accetta qualsiasi directory su un disco.

L'applicazione chiamante deve avere diritti di accesso FILE_LIST_DIRECTORY per questo
directory.

[out, optional] lpFreeBytesAvailableToCaller

Puntatore a una variabile che riceve il numero totale di byte liberi in un disco disponibile per l'utente associato al thread chiamante.

Questo parametro può essere NULL.

Se vengono usate quote per utente, questo valore può essere inferiore al numero totale di byte liberi su un disco.

[out, optional] lpTotalNumberOfBytes

Puntatore a una variabile che riceve il numero totale di byte in un disco disponibile per l'utente associato al thread chiamante.

Questo parametro può essere NULL.

Se vengono usate quote per utente, questo valore può essere inferiore al numero totale di byte su un disco.

Per determinare il numero totale di byte in un disco o in un volume, usare IOCTL_DISK_GET_LENGTH_INFO.

[out, optional] lpTotalNumberOfFreeBytes

Puntatore a una variabile che riceve il numero totale di byte liberi su un disco.

Questo parametro può essere NULL.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero (0). Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

I valori ottenuti da questa funzione sono di tipo ULARGE_INTEGER. Non troncare questi valori a 32 bit.

La funzione GetDiskFreeSpaceEx restituisce zero (0) per lpTotalNumberOfFreeBytes e lpFreeBytesAvailable per tutte le richieste CD, a meno che il disco non sia un CD non scritto in un'unità CD-RW.

Comportamento del collegamento simbolico: se il percorso punta a un collegamento simbolico, l'operazione viene eseguita sulla destinazione.

Nota

L'intestazione fileapi.h definisce GetDiskFreeSpaceEx 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

Funzioni di gestione disco

GetDiskFreeSpace

GetModuleHandle