请问:
怎样删除文件到回收站中
谢谢.

解决方案 »

  1.   

    //删除文件到回收站中
    //pszPath  : 待删除的全路径文件名
    //bDelete  : TRUE 删除,不移到回收站,FALSE:移到回收站
    一、 //返回    : TRUE 删除成功     FALSE 删除失败
    BOOL CDelFileToRecycleDlg::Recycle(LPCTSTR pszPath, BOOL bDelete/*=FALSE*/)
    {
     SHFILEOPSTRUCT  shDelFile;
     memset(&shDelFile,0,sizeof(SHFILEOPSTRUCT));
     shDelFile.fFlags |= FOF_SILENT;      // don't report progress
     shDelFile.fFlags |= FOF_NOERRORUI;     // don't report errors
     shDelFile.fFlags |= FOF_NOCONFIRMATION;    // don't confirm delete
     // Copy pathname to double-NULL-terminated string.
     //
     TCHAR buf[_MAX_PATH + 1]; // allow one more character
     _tcscpy(buf, pszPath);   // copy caller's pathname
     buf[_tcslen(buf)+1]=0;   // need two NULLs at end // Set SHFILEOPSTRUCT params for delete operation
     shDelFile.wFunc = FO_DELETE;       // REQUIRED: delete operation
     shDelFile.pFrom = buf;         // REQUIRED: which file(s)
     shDelFile.pTo = NULL;          // MUST be NULL
     if (bDelete)
     {         // if delete requested..
      shDelFile.fFlags &= ~FOF_ALLOWUNDO;    // ..don't use Recycle Bin
     } 
     else 
     {           // otherwise..
      shDelFile.fFlags |= FOF_ALLOWUNDO;    // ..send to Recycle Bin
     }
         return SHFileOperation(&shDelFile);    // do it!
    }