此程序如何修改?
float GetTheFreeSpace(AnsiString ThePath)
{
ULARGE_INTEGER FreeSpaceToCall,TotalSpace,FreeSpace;
AnsiString drv = ExtractFileDrive(ThePath);
float TheFreeSpace;
::GetDiskFreeSpaceEx(drv.c_str(),&FreeSpaceToCall,&TotalSpace,&FreeSpace);
TheFreeSpace=FreeSpace.QuadPart/1024/1024;
return TheFreeSpace;
}
有这样的函数,如果如果指定盘符非法,返回-1。比如输入Z盘,电脑无Z盘就返回-1.如何实现?
[解决办法]
就用上面的代码获取所有机器上的盘符,
然后 AnsiString drv = ExtractFileDrive(ThePath);
把 drv 跟这个盘符列表比对,如果在列表中就是有效的