Função GetDiskFreeSpaceExA (fileapi.h)
Recupera informações sobre a quantidade de espaço disponível em um volume de disco, que é a quantidade total de espaço, a quantidade total de espaço livre e a quantidade total de espaço livre disponível para o usuário associado ao thread de chamada.
Sintaxe
BOOL GetDiskFreeSpaceExA(
[in, optional] LPCSTR lpDirectoryName,
[out, optional] PULARGE_INTEGER lpFreeBytesAvailableToCaller,
[out, optional] PULARGE_INTEGER lpTotalNumberOfBytes,
[out, optional] PULARGE_INTEGER lpTotalNumberOfFreeBytes
);
Parâmetros
[in, optional] lpDirectoryName
Um diretório no disco.
Se esse parâmetro for NULL, a função usará a raiz do disco atual.
Se esse parâmetro for um nome UNC, ele deverá incluir uma barra invertida à direita, por exemplo, "\\MyServer\MyShare\".
Esse parâmetro não precisa especificar o diretório raiz em um disco. A função aceita qualquer diretório em um disco.
O aplicativo de chamada deve ter direitos de acesso FILE_LIST_DIRECTORY para isso
"samples".
[out, optional] lpFreeBytesAvailableToCaller
Um ponteiro para uma variável que recebe o número total de bytes gratuitos em um disco que estão disponíveis para o usuário associado ao thread de chamada.
Este parâmetro pode ser NULL.
Se cotas por usuário estiverem sendo usadas, esse valor poderá ser menor que o número total de bytes gratuitos em um disco.
[out, optional] lpTotalNumberOfBytes
Um ponteiro para uma variável que recebe o número total de bytes em um disco que estão disponíveis para o usuário associado ao thread de chamada.
Este parâmetro pode ser NULL.
Se cotas por usuário estiverem sendo usadas, esse valor poderá ser menor que o número total de bytes em um disco.
Para determinar o número total de bytes em um disco ou volume, use IOCTL_DISK_GET_LENGTH_INFO.
[out, optional] lpTotalNumberOfFreeBytes
Um ponteiro para uma variável que recebe o número total de bytes gratuitos em um disco.
Este parâmetro pode ser NULL.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será 0 (zero). Para obter informações de erro estendidas, chame GetLastError.
Comentários
Os valores obtidos por essa função são do tipo ULARGE_INTEGER. Não trunque esses valores para 32 bits.
A função GetDiskFreeSpaceEx retorna zero (0) para lpTotalNumberOfFreeBytes e lpFreeBytesAvailable para todas as solicitações de CD, a menos que o disco seja um CD não escrito em uma unidade CD-RW.
Comportamento simbólico do link – se o caminho apontar para um link simbólico, a operação será executada no destino.
Observação
O cabeçalho fileapi.h define GetDiskFreeSpaceEx como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | fileapi.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |