查找路径是否存在,包括根目录。& 检测磁盘剩余空间

BOOL   bRet=PathFileExists(strFileName);   

  
 Header:   shlwapi.h     
 Import   library:   shlwapi.lib  

// 检测磁盘剩余空间
// cDiskID: 磁盘盘符
// FreeDiskSpaceLimit: 剩余空间限制
UINT HardDiskOfCapacityCheck(char cDiskID, ULONG FreeDiskSpaceLimit)
{
   _ULARGE_INTEGER n64TotalNumberOfBytes, n64TotalNumberOfFreeBytes;
   __int64 n64TotalFree = 0, n64TotalSpace = 0;

   char crDrv[3];
  // CStringArray strArray;

   sprintf(crDrv, "%c:\\",cDiskID);

   UINT nDrvType = GetDriveType((LPCTSTR)crDrv);

   if (nDrvType != DRIVE_FIXED)
   {
      return NOT_DISK;
   }
   BOOL bSuccess = SHGetDiskFreeSpaceEx((LPCTSTR)crDrv, NULL, &n64TotalNumberOfBytes, \
                       &n64TotalNumberOfFreeBytes);
   if (!bSuccess)
   {
      return STATE_ERROR;
   }

   n64TotalSpace = (ULONG)n64TotalNumberOfBytes.QuadPart/1024;
   n64TotalFree  = (ULONG)n64TotalNumberOfFreeBytes.QuadPart/1024;

   if (n64TotalFree < FreeDiskSpaceLimit)
   {
      return LACK_OF_DISK;
   }
   return SUFFICIENT_OF_DISK;

}

原文地址:https://www.cnblogs.com/pbreak/p/1721620.html