我正在尝试使用 this question 中的第二个答案删除文件夹。我的文件夹包含一些子文件夹,其中包含 Thumbs.db。所以我收到错误:
PermissionError: [WinError 32] Процесс не может получить доступ к файлу, так как этот файл занят другим процессом: 'C:/foto/my_foto/Thumbs.db'
当我尝试删除 C:/foto/my_foto/Thumbs.db 时。
如何删除该文件?
最佳答案
与其他语言相同 - c# , c++ , java - 因为它特定于操作系统而不是语言。
有几个选项,只有最后一个没有令人讨厌的副作用:
- Schedule deletion at the next reboot with
MoveFileEx
(它存在于pywin32
中) - Find the process(es) using the file and close the handles inside them - 这可能会使它们发生故障(可以使用
ctypes
调用相关API) - 专门针对
Thumbs.db
- disable thumbnail caching in Explorer settings适用于有权访问特定文件夹并且可以在您运行命令时以交互方式登录的所有用户。
简而言之,正确的方法是让妨碍您的程序停止这样做。或者,如果该程序有正当理由将锁定的文件保留在那里,请重新考虑您的目录使用模式。
关于python - 如何使用python删除thumbs.db?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43368640/