当文件资源管理器窗口打开一个目录时,当我尝试删除该目录时,会出现某种文件权限错误。该怎么办?

当文件资源管理器窗口打开一个目录时,当我尝试删除该目录时,会出现某种文件权限错误。该怎么办?
  1. 我在文件资源管理器中打开一个目录。
  2. 我尝试删除同一个目录(从脚本或命令行或其他方式)。
  3. 无法删除它,因为它当前处于“正在使用”或“已打开”状态。

我希望无论如何都将其删除并从视觉上关闭(因为它不再存在),而不是出现错误。

起初,我认为我应该检查该目录是否可以“写入”,并且只有在可以的情况下才删除它,但这只会阻止记录错误;它实际上并不能解决删除目录的问题。

这是否可以“强制”?我想不出有多少情况会让我需要在 GUI 窗口中打开一个目录来“阻止”删除同一个目录,而且在我开发过程中,它总是给我带来烦人的问题。

答案1

并不真地。

Explorer 的文件夹上有一个FindFirstChangeNotification/,FindNextChangeNotification因此,如果文件夹的内容发生变化,它可以更新文件夹的内容。

https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findfirstchangenotificationw

答案2

你试一试:

rem :: open current foder in explorer ::
explorer .

rem :: kill explorer windows by title/path ::
2>nul >nul %__APPDIR__%taskkill.exe /fi "IMAGENAME eq explorer.exe" /fi "windowtitle eq %CD%"

rem :: removing your folder \name :: 
if %errorlevel% == 0 for /d %%i in (.)do cd.. && rmdir "%%~nxi" /q /s

相关内容