if(!GetDiskFreeSpaceEx(
lpDirectoryName, // directory name
&m_uliFreeBytesAvailable, // bytes available to caller
&m_uliTotalNumberOfBytes, // bytes on disk
&m_uliTotalNumberOfFreeBytes)) // free bytes on disk
return false;
else
diskFreeSpaceInKB = static_cast<long int>(m_uliTotalNumberOfFreeBytes.QuadPart/ONE_KB_IN_BYTES) ;
這對於具有容量大於1TB的磁盤返回負值。
我需要這些可用的磁盤空間,使得用戶可以記錄一個電影如果存在磁盤空間不足的準確值。
能否請你告訴你的代碼? – KimKulling
該函數返回什麼_exact_值?請以十六進制顯示值。 –
UGS ::系統:: SYSS_GetDiskFreeSpaceEx( 的getLocation()c_str(),//目錄名 &iFreeBytesAvailable, &iTotalNumberOfBytes, &iTotalNumberOfFreeBytes ); diskFreeSpaceInKB = static_cast(iTotalNumberOfFreeBytes.QuadPart/ONE_KB_IN_BYTES); –
Divya