错误代码0x80070091源于ntfs句柄未释放或元数据损坏,可通过建临时文件重扫描、robocopy /mir镜像清空、powershell加\?\前缀强制删除、清理system volume information残留项或批处理循环删除五种方法解决。

电脑提示“0x80070091 文件夹不为空无法删除”,说明系统在底层判定该目录存在未释放的句柄、损坏的元数据或隐藏的NTFS特殊条目(如“.”或“..”),导致常规删除失败,哪怕文件夹看起来空空如也、大小为0字节。
先触发系统重扫描,修正误判
这一步操作起来很简单,直接在最深层子目录里建个临时文件,就能让系统重新核算整个路径的“空状态”。
打开文件资源管理器,逐层双击进入目标文件夹的最底层子目录(即里面再没有其他文件夹的那层)。
在该空白处右键 → “新建” → “文本文档”,命名为temp.txt。
关闭所有窗口,返回上一级,再次尝试右键删除原始目标文件夹——多数情况下此时已能成功。
用Robocopy镜像清空,绕过循环引用
当文件夹内部存在NTFS循环链接或元数据错乱时,robocopy的/MIR参数能强制将其结构“覆盖”为空,比手动删更底层、更可靠。
方法一:命令行方式
在目标文件夹所在磁盘根目录(如D:\)下新建一个名为Empty的空白文件夹。
按Win + R,输入cmd回车,以普通权限启动命令提示符。
执行:cd /d D:\(请将D:\替换为实际路径)→ robocopy "Empty" "BadFolder" /MIR(其中BadFolder是你要删的文件夹名)。
等待输出显示“已复制: 0”且无报错后,关闭窗口,再尝试删除原文件夹。
方法二:PowerShell管理员模式(更推荐)
在目标文件夹的父目录中,按住Shift键右键空白处 → “在此处打开PowerShell窗口(管理员)”。
执行:robocopy .\Empty\ .\BadFolder\ /MIR(【注意】Empty和BadFolder必须在同一级目录下)。
命令完成后直接刷新资源管理器,原文件夹图标会消失,或可立即右键删除。
用PowerShell强制删除超长/特殊命名路径
如果文件夹名含“.”、“..”或路径超过260字符,Windows自带删除器会直接拒认,必须用\?\前缀调用NT内核接口。
第一步:获取管理员PowerShell
一款AI工具,主要用于在主代理响应前,并行运行Kimi K2.5和GPT 5.3 Codex,注入双方观点以增强认知多样性,适合需要提升相关任务效率的用户。
按Win + R,输入powershell,再按Ctrl + Shift + Enter确认以管理员身份运行。
第二步:执行强制删除
粘贴并运行:CMD /C "RD /S /Q \?\D:\path\to\BadFolder"(把D:\path\to\BadFolder换成你的真实完整路径)。
若提示“拒绝访问”,先补执行权限命令:takeown /f "D:\path\to\BadFolder" /r /d y & icacls "D:\path\to\BadFolder" /grant administrators:F /t,再重试上一步。
【关键提醒】此命令不可逆,执行前务必确认路径无误——输错一个字符可能删掉整个盘。
清理System Volume Information残留项
该错误高频出现在尝试删除系统还原点或清理C盘时,根源常是C:\System Volume Information里卡着旧还原点子文件夹,它们名字像{a1b2c3d4-5678-90ab-cdef-1234567890ab},系统不敢动但又判定非空。
以管理员身份运行命令提示符,依次执行:
icacls "C:\System Volume Information" /grant administrators:F /t
attrib -h -r -s "C:\System Volume Information"
打开资源管理器,导航至C:\System Volume Information,查找所有带大括号的子文件夹。
逐一右键删除其中创建时间早于最近一次系统还原、大小为0字节、或属性显示“无法访问”的子项——【切记】只删这些子文件夹,绝不能删整个System Volume Information文件夹。
用批处理脚本反复冲击顽固目录
有些嵌套极深的空文件夹(比如几百层“test→test→test…”)会卡死Explorer,批处理的循环+强制删除指令能持续施压直到成功。
在桌面新建文本文档,粘贴以下内容:
@echo off
:loop
rd /s /q "C:\your\full\path"
if exist "C:\your\full\path" goto loop
把C:\your\full\path替换成你要删的文件夹完整路径,保存为delete.bat(编码选ANSI,扩展名务必是.bat)。
双击运行该bat文件,它会不断尝试删除,直到路径不存在为止——终端会闪一下就自动退出,刷新资源管理器即可确认结果。










