16,472
社区成员
发帖
与我相关
我的任务
分享
HANDLE hPartition = CreateFile("\\\\.\\i:", GENERIC_READ,FILE_SHARE_READ,0, OPEN_EXISTING, 0, 0);
DWORD dwLow, dwHigh;
dwLow = GetFileSize(hPartition,&dwHigh);//我用这个打开分区,句柄不是空的,但是返回的值是无效的,请大家指正!对了,分区都是大于2G的
ULONGLONG CSdDiskTestToolDlg::GetDiskSize(CString strDestinationFilePartition)
{
ULARGE_INTEGER FreeBytesAvailableToCaller;
ULARGE_INTEGER TotalNumberOfBytes;
ULARGE_INTEGER TotalNumberOfFreeBytes;
GetDiskFreeSpaceEx(strDestinationFilePartition,
&FreeBytesAvailableToCaller,
&TotalNumberOfBytes,
&TotalNumberOfFreeBytes);
return TotalNumberOfBytes.QuadPart;
}
亲自验证,起码我用的是正确的