The GetDiskFreeSpaceEx function obtains information about the amount of space available on a disk volume: the total amount of space, the total amount of free space, and the total amount of free space available to the user associated with the calling thread.
BOOL GetDiskFreeSpaceEx(
LPCTSTR lpDirectoryName, |
// pointer to directory name on disk of interest |
PULARGE_INTEGER lpFreeBytesAvailableToCaller, |
// pointer to variable to receive free bytes on disk available to the caller |
PULARGE_INTEGER lpTotalNumberOfBytes, |
// pointer to variable to receive number of bytes on disk |
PULARGE_INTEGER lpTotalNumberOfFreeBytes |
// pointer to variable to receive free bytes on disk |
); |
If lpDirectoryName is NULL, the GetDiskFreeSpaceEx function obtains information about the disk that contains the current directory.
Note that lpDirectoryName does not have to specify the root directory
on a disk. The function accepts any directory on the disk.
If the operating system implements per-user quotas, this value may be less
than the total number of free bytes on the disk.
This parameter can be NULL.
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Note that the values obtained by this function are of type ULARGE_INTEGER. Be careful not to truncate these values to 32 bits.
Use the GetVersionEx function to determine that a system is running OSR 2 or a later release of the Windows 95 operating system. The GetVersionEx function fills in the members of an OSVERSIONINFO data structure. If the dwPlatformId member of that structure is VER_PLATFORM_WIN32_WINDOWS, and the low word of the dwBuildNumber member is greater than 1000, the system is running OSR 2 or a later release.
Once you have determined that a system is running OSR 2, call the LoadLibrary or LoadLibraryEx function to load the KERNEL32.DLL file, then call the GetProcAddress function to obtain an address for the GetDiskFreeSpaceEx function. Use that address to call the function.