QQ登录

只需一步,快速开始

162上位机VC MFC删除指定文件到回收站

[ 复制链接 ]

162上位机VC MFC删除指定文件到回收站

162上位机VC MFC删除指定文件到回收站
162上位机VC MFC删除指定文件到回收站
功能展示
文件的删除操作也是一个程序很常用的功能,删除文件的方法很多,有直接删除,也有删除到回收站,以防误删操作;我们当前例程实现指定文件删除到回收站功能,效果如图,浏览指定要删除的文件后,点击删除便可;
要点提示
我们当前用到的文件删除函数为SHFileOperation();此函数用于删除,移动和复制重命名文件的操作;函数原型为WINSHELLAPIint WINAPI SHFileOperation( LPSHFILEOPSTRUCT lpFileOp );它跟随一个结构体参数,查阅MSDN可知晓此结构体的成员变量含义;
Wndw,拥有者窗口句柄; wFunc文件操作功能,我们例程使用FO_DELETE进行文件删除工作;pFrom 要删除的文件路径;pTo目标文件我们当前例程设为NUUL指向回收站; fFlag文件控制标识;fAnyOperationsAborted标识用户是否可中断操作;hNameMappings指向一个SHNAMEMAPPING结构体指针 ;lpszProgressTile进行标题;
要注意的是 结构体的pFrom,pTo需以“\0”结尾,不然删除文件失败;具体用法参照例程
实现功能
1.新建基于对话框的应用程序
2.拖拽编辑框控件ID默认为IDC_EDIT1,拖拽浏览文件,删除文件按钮,关联函数
  1. void CGkbc8Dlg::OnButton1()
  2. {
  3.         CFileDialog Dlg(true,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"All Files(*.*)|*.*| |",AfxGetMainWnd());
  4.         if(Dlg.DoModal()==IDOK)
  5.         {
  6.                 CString sText= Dlg.GetPathName();
  7.                 SetDlgItemText(IDC_EDIT1,sText);
  8.         }        
  9. }
复制代码
  1. void CGkbc8Dlg::OnButton2()
  2. {
  3.         CString sPath;
  4.         GetDlgItemText(IDC_EDIT1,sPath);
  5.         if(sPath.IsEmpty())//编辑框没内容
  6.                 return;
  7.         char fileName[_MAX_PATH]="\0";
  8.         strcpy(fileName,sPath);
  9.         strcat(fileName,"\0");
  10.         
  11.         SHFILEOPSTRUCT shfile;
  12.         ZeroMemory((void*)&shfile,sizeof(SHFILEOPSTRUCT));
  13.         shfile.hwnd = 0;
  14.         shfile.wFunc = FO_DELETE;
  15.         shfile.pFrom =  fileName;
  16.         shfile.pTo = NULL;
  17.         shfile.fFlags = FOF_ALLOWUNDO;
  18.         shfile.hNameMappings = NULL;
  19.         shfile.lpszProgressTitle =NULL ;
  20.         SHFileOperation(&shfile);//执行删除
  21. }
复制代码
我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:162.上位机VC MFC删除指定文件到回收站.rar 
文件大小:124.66 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索