清泛IT社区

标题: SHFileOperation 这个API函数怎么用起来结果飘忽不定? [打印本页]

作者: 清泛网    时间: 2016-02-29 14:43
标题: SHFileOperation 这个API函数怎么用起来结果飘忽不定?
SHFileOperation方法有时不起作用,用起来结果飘忽不定,路径末尾加上'\0'也一样,笔者亲测,删除有时成功有时失败。

解决:
改用C++的FindNextFile,支持 * 通配符查找文件,核心代码如下:
  1. WIN32_FIND_DATA FindFileData;
  2. char szCurPath[MAX_PATH + 1] = { 0 };
  3. GetCurrentDirectory(MAX_PATH, szCurPath);
  4. CString findFileName;
  5. findFileName.Format("%stest*.txt", szCurPath);

  6. HANDLE hFind = ::FindFirstFile(findFileName, &FindFileData);
  7. if(INVALID_HANDLE_VALUE != hFind)
  8. {
  9.        do {                        
  10.              findFileName.Format("%s%s", szCurPath, FindFileData.cFileName);
  11.              DeleteFile(findFileName);
  12.        } while(FindNextFile(hFind, &FindFileData));

  13.        FindClose(hFind);
  14. }
复制代码





欢迎光临 清泛IT社区 (https://bbs.tsingfun.com/) Powered by Discuz! X3.3