标签:win32 eof bsp als 代码 文件夹 cts 文件删除 file
1 bool DeleteFolderAll(LPCTSTR pSrcPath ) 2 { 3 if(pSrcPath == NULL) 4 return false; 5 6 wchar_t pwcPath[MAX_PATH]; 7 wcscpy(pwcPath , pSrcPath); 8 int ilen = wcslen(pwcPath); 9 10 if (pwcPath[ilen-1] == L‘\\‘) 11 { 12 pwcPath[ilen-1] = 0; 13 } 14 15 16 wchar_t wcPath[MAX_PATH] = {0}; 17 wcscpy(wcPath,pwcPath); 18 wcscat(wcPath,_T("\\*.*")); 19 WIN32_FIND_DATA FindFileData; 20 ZeroMemory(&FindFileData,sizeof(WIN32_FIND_DATA)); 21 22 HANDLE hFindFile = FindFirstFile(wcPath,&FindFileData); 23 24 if(hFindFile == INVALID_HANDLE_VALUE) 25 return false; 26 27 BOOL bContinue = true; 28 29 while (bContinue != false) 30 { 31 //bIsDots为真表示是.或.. 32 bool bIsDots = (wcscmp(FindFileData.cFileName,_T(".")) == 0 || wcscmp(FindFileData.cFileName,_T("..")) == 0); 33 if ((FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0 && bIsDots == false) 34 { 35 //是目录,就再进入该目录 36 wcscpy(wcPath,pwcPath); 37 wcscat(wcPath,_T("\\")); 38 wcscat(wcPath,FindFileData.cFileName); 39 DeleteFolderAll(wcPath); 40 //寻找下一文件 41 bContinue = FindNextFile(hFindFile,&FindFileData); 42 continue; 43 } 44 45 if (bIsDots == false) 46 { 47 //是文件删除之 48 wcscpy(wcPath,pwcPath); 49 wcscat(wcPath,_T("\\")); 50 wcscat(wcPath,FindFileData.cFileName); 51 DeleteFile(wcPath); 52 } 53 //寻找下一文件 54 bContinue = FindNextFile(hFindFile,&FindFileData); 55 56 } 57 58 FindClose(hFindFile); 59 60 //删除空目录 61 RemoveDirectory(pwcPath); 62 return true; 63 }
标签:win32 eof bsp als 代码 文件夹 cts 文件删除 file
原文地址:https://www.cnblogs.com/george-cw/p/11479888.html