如何检测文件夹是否太重,如果是,则删除其中的一部分

我需要控制由路径定义的文件夹是否充满了文件夹,如果这些文件夹太多,我需要从较旧的文件夹中删除例如最新的一半。实际上,我需要为将来的文件夹腾出空间。

void fCID(long pThreadId)
{
 ULARGE_INTEGER rFreeBytesAvailable, rTotalNumberOfBytes, rTotalNumberOfFreeBytes;
 if(sc.LB.TMCI && sc.LB.ISM == 1)
 {
   for(10000000000;10000000000 > sd;sd--) //wrong, i'm looking for it
   {
    if (::GetDiskFreeSpaceEx (NULL, &rFreeBytesAvailable, &rTotalNumberOfBytes, 
      &rTotalNumberOfFreeBytes))
      {
       if (rFreeBytesAvailable.QuadPart > 10000000000)     //10gb
        {
         fAFOZA("C:\\S\\H1\\CA");   //function zip   
        }
       else
       {
        sd=sd - 50% of (LA); //sd = space disposable
       }
      }
    }
  }
else  
{
fDFOP(where.Trace_C_P);  //not interesting
fDFOP(where.Trace_C_CL_P); //not interesting
}
}

这段代码只是一个想法