更新时间:2015-11-17 23:29:52浏览次数:1+次
函数GetDiskFreeSpaceEx声明如下:
WINBASEAPI
BOOL
WINAPI
GetDiskFreeSpaceExA(
__in_opt LPCSTR lpDirectoryName,
__out_opt PULARGE_INTEGER lpFreeBytesAvailableToCaller,
__out_opt PULARGE_INTEGER lpTotalNumberOfBytes,
__out_opt PULARGE_INTEGER lpTotalNumberOfFreeBytes
);
WINBASEAPI
BOOL
WINAPI
GetDiskFreeSpaceExW(
__in_opt LPCWSTR lpDirectoryName,
__out_opt PULARGE_INTEGER lpFreeBytesAvailableToCaller,
__out_opt PULARGE_INTEGER lpTotalNumberOfBytes,
__out_opt PULARGE_INTEGER lpTotalNumberOfFreeBytes
);
#ifdef UNICODE
#define GetDiskFreeSpaceEx GetDiskFreeSpaceExW
#else
#define GetDiskFreeSpaceEx GetDiskFreeSpaceExA
#endif // !UNICODE
lpDirectoryName是驱动器的名称。
lpFreeBytesAvailableToCaller是用户可用的磁盘空间。
lpTotalNumberOfBytes是磁盘总共的空间。
lpTotalNumberOfFreeBytes是磁盘空闲的空间。以上都是字节为单位。
运行实例:
int DiskInfoManage::GetTotalSpaceEx(TCHAR *szDisk)
{
ULARGE_INTEGER dwAvailalbe, dwFree, dwTotal;
BOOL bRet = GetDiskFreeSpaceEx(szDisk, &dwAvailalbe, &dwTotal, &dwFree);
if (bRet)
{
return dwTotal.QuadPart;
}
return 0;
}
相关资讯