GetDiskFreeSpaceEx
[New
- Windows NT]
[New
- Windows 95, OEM Service Release 2]
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.
Windows 95
OSR 2:
The GetDiskFreeSpaceEx
function is available on Windows 95 systems beginning with OEM Service Release
2 (OSR 2).
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.
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 |
|
); |
|
Parameters
lpDirectoryName
Pointer to a
null-terminated string that specifies a directory on the disk of interest. This
string can be a UNC name.
If lpDirectoryName is NULL, the GetDiskFreeSpaceEx
function obtains information about the disk that contains the currect
directory.
Note that lpDirectoryName does not have to specify the root
directory on a disk. The function accepts any directory on the disk.
lpFreeBytesAvailableToCaller
Pointer to a
variable to receive the total number of free bytes on the disk that are
available to the user associated with the calling thread.
If the operating system implements per-user quotas, this value may be
less than the total number of free bytes on the disk.
lpTotalNumberOfBytes
Pointer to a
variable to receive the total number of bytes on the disk.
lpTotalNumberOfFreeBytes
Pointer to a
variable to receive the total number of free bytes on the disk.
This
parameter can be NULL.
Return Values
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.
Remarks
Note that the
values obtained by this function are of type ULARGE_INTEGER. Be careful
not to truncate these values to 32 bits.
The GetDiskFreeSpaceEx
function lets you avoid the arithmetic required by the GetDiskFreeSpace
function.
See Also