您的位置:首页 > 其它

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

2010-04-26 22:43 507 查看
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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: