实验性::文件系统::删除_全部():权限被拒绝

时间:2018-06-22 13:15:17

标签: c++ filesystems c++17 removeall

说我在一个文件夹内的文件夹中有一些文件,例如:

folder1
    |- folder11
    |      |- file1
    |
    |- folder12
           |- file2

所有这些文件和文件夹都是在我的程序运行时创建的,之后应将其删除。为此,我尝试使用std::experimental::filesystem::remove_all(path)作为path的相对路径或绝对路径(我都尝试了)。这应该递归删除文件和文件夹,最后删除folder1

相反,会发生的是删除文件,然后,将引发异常并保留文件夹。

  

文件系统错误:无法全部删除:权限被拒绝[。\ path \ to \ folder1]

我正在Windows 7上使用 gcc 7.3.0 进行编译。不幸的是,使用此编译器,我无法检查folder1是否发生相同的异常。

我也尝试过以管理员身份执行程序,但是仍然会抛出相同的异常。

this answer开始,我了解到曾经有一个错误,但该错误已得到解决。

现在,我的问题是,如果我理解std::filesystem的用法有误,是否错过了一些设置,以便正确使用此功能,或者在实现中可能还存在其他错误。 / p>

0 个答案:

没有答案