win32 API疑问? 谢谢! 请问使用win32 API如何实现删除一个文件夹? 谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 RemoveDirectoryBOOL RemoveDirectory(LPCTSTR lpPathName); 但是这个文件夹不能有文件存在的,只能删除空的文件夹This function deletes an existing empty directory 这个估计可以删除整个文件夹//删除文件夹BOOL DeleteFolder(LPSTR pszFolder){ SHFILEOPSTRUCT fos; ZeroMemory(&fos,sizeof(fos)); fos.hwnd=HWND_DESKTOP; fos.wFunc=FO_DELETE; fos.fFlags=FOF_SILENT|FOF_ALLOWUNDO; fos.pFrom=pszFolder; //删除文件夹及其内容 if(0!=SHFileoperation(&fos)) return FALSE; return TRUE;} void DeleteFolder(CString sPath){ CFileFind ff; BOOL bFound; bFound = ff.FindFile(sPath + "\\*.*"); while(bFound){ bFound = ff.FindNextFile(); CString sFilePath = ff.GetFilePath(); if(ff.IsDirectory()){ if(!ff.IsDots()) DeleteFolder(sFilePath); }else{ if(ff.IsReadOnly()){ SetFileAttributes(sFilePath, FILE_ATTRIBUTE_NORMAL); } DeleteFile(sFilePath); } } ff.Close(); SetFileAttributes(sPath, FILE_ATTRIBUTE_NORMAL); RemoveDirectory(sPath);} SHFileoperation 不管是空目录还是有文件,都可以删除的 当然是SHFileoperation,万能删除... windows程序设计上的滚动条没有搞懂 AfxExtractSubString的用法 List控件如何实现图标位置的拖动啊? 怎么设置文本框里的字体颜色 drawcli中是如何调用画图的? 串口编程小问 请问如何让程序在进程列表里面显示的不是文件名,而是给它换个名字? 这个消息名是什么???? 用vc++编写usb蓝牙通讯遇到的问题,望大神指教 一个TCP配置的问题 unicode转内码的问题 关于ATL ASP的问题? 请高手帮忙
LPCTSTR lpPathName);
但是这个文件夹不能有文件存在的,只能删除空的文件夹This function deletes an existing empty directory
BOOL DeleteFolder(LPSTR pszFolder)
{
SHFILEOPSTRUCT fos;
ZeroMemory(&fos,sizeof(fos));
fos.hwnd=HWND_DESKTOP;
fos.wFunc=FO_DELETE;
fos.fFlags=FOF_SILENT|FOF_ALLOWUNDO; fos.pFrom=pszFolder;
//删除文件夹及其内容
if(0!=SHFileoperation(&fos))
return FALSE;
return TRUE;
}
void DeleteFolder(CString sPath)
{
CFileFind ff;
BOOL bFound;
bFound = ff.FindFile(sPath + "\\*.*");
while(bFound){
bFound = ff.FindNextFile();
CString sFilePath = ff.GetFilePath(); if(ff.IsDirectory()){
if(!ff.IsDots())
DeleteFolder(sFilePath);
}else{
if(ff.IsReadOnly()){
SetFileAttributes(sFilePath, FILE_ATTRIBUTE_NORMAL);
}
DeleteFile(sFilePath);
}
}
ff.Close();
SetFileAttributes(sPath, FILE_ATTRIBUTE_NORMAL);
RemoveDirectory(sPath);
}