C++ 获取辅助硬盘的空间-c++;
通过下面的链接,我可以获得硬盘空间 但是如果我连接一个辅助硬盘,它就不会显示它的详细信息 如何循环硬盘数量并检索其空间 我想把它放在一个循环区。获取硬盘计数并循环硬盘1中的驱动器,然后循环硬盘2中的驱动器,就像这样。怎么样:C++ 获取辅助硬盘的空间-c++;,c++,winapi,visual-c++,hard-drive,C++,Winapi,Visual C++,Hard Drive,通过下面的链接,我可以获得硬盘空间 但是如果我连接一个辅助硬盘,它就不会显示它的详细信息 如何循环硬盘数量并检索其空间 我想把它放在一个循环区。获取硬盘计数并循环硬盘1中的驱动器,然后循环硬盘2中的驱动器,就像这样。怎么样: for (char drive = 'a'; drive <= 'z'; drive++) { // Get for amount for `drive` } for(char-drive='a';drive使用Windows API的函数 std::ve
for (char drive = 'a'; drive <= 'z'; drive++)
{
// Get for amount for `drive`
}
for(char-drive='a';drive使用Windows API的函数
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];
}
std::vector驱动器;
TCHAR szBuffer[1024];
::GetLogicalDriveStrings(1024,szBuffer);
TCHAR*pccurrentdrive=szBuffer;
while(*pCurrentDrive)
{
驱动器。推回(pCurrentDrive);
pccurrentdrive=&pccurrentdrive[_tcslen(pccurrentdrive)+1];
}
然后为驱动器
向量中的每个元素调用GetDiskFreeSpaceEx
您也可以使用GetLogicalDrives
函数,它将驱动器作为位掩码返回。但是,我认为GetLogicalDriveStrings
在这种情况下更简单,因为它将驱动器作为字符串返回,您可以直接传递到GetDiskFreeSpaceEx
。您可能应该将其标记为windows特定的,除非您正在寻找一种跨平台的方法?您可以使用GetLogicalDrives获取可用驱动器的位掩码。这可能会导致旧软盘驱动器开始研磨。谢谢。但我希望在循环扇区中获得该值。获取硬盘计数并循环硬盘1中的驱动器,然后循环硬盘1中的驱动器e那