Поделиться через


Функция GetDiskFreeSpaceExA (fileapi.h)

Извлекает сведения об объеме свободного места на томе диска, т. е. об общем объеме свободного места, а также об общем объеме свободного места, доступного пользователю, связанному с вызывающим потоком.

Синтаксис

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

Параметры

[in, optional] lpDirectoryName

Каталог на диске.

Если этот параметр имеет значение NULL, функция использует корень текущего диска.

Если этот параметр является UNC-именем, он должен содержать обратную косую черту в конце, например "\\MyServer\MyShare\".

Этот параметр не должен указывать корневой каталог на диске. Функция принимает любой каталог на диске.

Вызывающее приложение должно иметь права доступа FILE_LIST_DIRECTORY для этого
драйвера JDBC.

[out, optional] lpFreeBytesAvailableToCaller

Указатель на переменную, получающую общее количество свободных байтов на диске, доступное пользователю, связанному с вызывающим потоком.

Этот параметр может принимать значение NULL.

Если используются квоты на пользователя, это значение может быть меньше общего числа свободных байтов на диске.

[out, optional] lpTotalNumberOfBytes

Указатель на переменную, получающую общее количество байтов на диске, доступное пользователю, связанному с вызывающим потоком.

Этот параметр может принимать значение NULL.

Если используются квоты на пользователя, это значение может быть меньше общего числа байтов на диске.

Чтобы определить общее количество байтов на диске или томе, используйте IOCTL_DISK_GET_LENGTH_INFO.

[out, optional] lpTotalNumberOfFreeBytes

Указатель на переменную, получающую общее количество свободных байтов на диске.

Этот параметр может принимать значение NULL.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция завершается сбоем, возвращаемое значение равно нулю (0). Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Значения, полученные этой функцией, относятся к типу ULARGE_INTEGER. Не усекайте эти значения до 32 бит.

Функция GetDiskFreeSpaceEx возвращает ноль (0) для lpTotalNumberOfFreeBytes и lpFreeBytesAvailable для всех запросов компакт-дисков, если диск не является неписанным компакт-диском на диске CD-RW.

Поведение символьной ссылки. Если путь указывает на символьную ссылку, операция выполняется на целевом объекте.

Примечание

Заголовок fileapi.h определяет GetDiskFreeSpaceEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header fileapi.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

Функции управления дисками

GetDiskFreeSpace

GetModuleHandle