最好用API

解决方案 »

  1.   

    试试这个:DeleteFile("...//?/*.*");BOOL DeleteFile(
      LPCTSTR lpFileName   // file name
    );
      

  2.   

    文件夹不能用DeleteFile, 使用失败的说,BOOL RemoveDirectory(
      LPCTSTR lpPathName   // pointer to directory to remove
    );然后目录下有文件也会失败,所以很简单就是使用递归调用.把目录下的文件删干警了, 然后删目录.
    注意:没有考虑文件属性问题.自己改吧.
    函数使用方式, 入口填入要删除的目录,然后搞定.GetFolderAllFiles(CString csFolderName)
    {
      CFileFind f;
      BOOL bFind=f.FindFile(csFolderName+"\\*.*");
      while(bFind)
      {
        bFind = f.FindNextFile();
        if(f.IsDots()) continue;
        if(f.IsDirectory())
        {
          GetFolderAllFiles(csFolderName+"\\"+f.GetFileName());
        }
        TRACE(f.GetFilePath()+"\r\n");   //這裡得到的就是文件.
        DeleteFile(f.GetFilePath());
      }
      RemoveDirectory(csFolderName);
    }