簡體   English   中英

獲取輔助硬盤的空間-C ++

[英]Get the space of Secondary hard disk - c++

通過下面的鏈接,我可以獲得硬盤空間。

獲取硬盤空間

但是,如果我連接輔助硬盤,則不會顯示其詳細信息。

如何循環使用硬盤數量並檢索它們的空間?

我想在循環領域中做到這一點。 獲取硬盤計數並為harddisk1中的驅動器循環,然后像這樣為harddisk2中的驅動器循環。

使用Windows API的GetLogicalDriveStrings函數。

std::vector< std::basic_string<TCHAR> > drives;

TCHAR szBuffer[1024];
::GetLogicalDriveStrings(1024, szBuffer);
TCHAR *pCurrentDrive = szBuffer;
while (*pCurrentDrive)
{
   drives.push_back( pCurrentDrive );
   pCurrentDrive = &pCurrentDrive[_tcslen(pCurrentDrive) + 1];
}

然后為drives矢量中的每個元素調用GetDiskFreeSpaceEx

您也可以改用GetLogicalDrives函數,該函數將驅動器作為位掩碼返回。 但是,我認為GetLogicalDriveStrings在這種情況下更簡單,因為它以字符串形式返回驅動器,您可以將這些驅動器直接傳遞給GetDiskFreeSpaceEx

怎么樣:

for (char drive = 'a'; drive <= 'z'; drive++)
{
    // Get for amount for `drive`
}

對於那些想知道的人...是的,這非常幼稚並且可能很耗時。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM