我无法删除 Windows 7 中的某个文件夹。它不是系统文件夹。它是由应用程序创建的。我收到一条错误消息“您需要权限才能执行此操作。您需要 Tony 的权限...”。我是管理员,以我自己的身份登录 Tony。我拥有该文件夹的完全所有权和完全控制权限。我重启了机器。我关闭了创建该文件夹的应用程序。我没主意了。
为什么 Windows 7 不允许我删除该文件夹?
答案1
我不确定为什么会发生这种情况,但有一个解决方法。
要控制无法删除的文件夹,请创建一个名为的文本文件delete.bat
并在其中添加以下几行:
SET DIRECTORY_NAME="C:\Locked Directory"
TAKEOWN /f %DIRECTORY_NAME% /r /d y
ICACLS %DIRECTORY_NAME% /grant administrators:F /t
ICACLS %DIRECTORY_NAME% /reset /T
PAUSE
您将需要更改目录路径以满足您的要求,C:\Locked Directory
例如C:\Delete Me
。
delete.bat
右键单击选择的文件Run As Administrator
,现在您应该可以完全控制目录和所有子目录,这意味着您可以对它们执行您想做的事情。
答案2
唯一的方法是从该文件夹中的最低级文件夹开始删除文件。我在每个包含子文件夹的文件夹中都收到了该错误消息。我删除了所有文件/子文件夹,然后逐级向上删除。
答案3
文件夹可以不允许父级覆盖其权限,因此它在一定深度时会停止工作。
使用进程监控并过滤拒绝访问事件来弄清楚这个深度
每次拒绝访问事件发生时将权限更改为由@Sahil 解释。
您可以使用处理查看哪些进程正在打开文件夹中的文件。
handle C:\Path\To\Folder\You\Are\Trying\To\Delete
例子:
C:\Windows\system32>handle C:\Windows\System32\inetsrv
Handle v3.45
Copyright (C) 1997-2011 Mark Russinovich
Sysinternals - www.sysinternals.com
svchost.exe pid: 1500 type: File 134: C:\Windows\System32\inetsrv\config\schema
svchost.exe pid: 1500 type: File 1B4: C:\Windows\System32\inetsrv\config\schema
svchost.exe pid: 1500 type: File 1BC: C:\Windows\System32\inetsrv\config
svchost.exe pid: 1500 type: File 1CC: C:\Windows\System32\inetsrv\config
svchost.exe pid: 1500 type: File 1D0: C:\Windows\System32\inetsrv\config
inetinfo.exe pid: 1572 type: File 3C: C:\Windows\System32\inetsrv\en-US\inetinfo.exe.mui
inetinfo.exe pid: 1572 type: File 188: C:\Windows\System32\inetsrv\MBSchema.bin.00000000h
inetinfo.exe pid: 1572 type: File 190: C:\Windows\System32\inetsrv\MBSchema.bin.00000000h
inetinfo.exe pid: 1572 type: File 1BC: C:\Windows\System32\inetsrv\MetaBase.xml
inetinfo.exe pid: 1572 type: File 1D4: C:\Windows\System32\inetsrv\MBSchema.xml
svchost.exe pid: 1884 type: File 1AC: C:\Windows\System32\inetsrv\config\schema
svchost.exe pid: 1884 type: File 1C0: C:\Windows\System32\inetsrv\config
svchost.exe pid: 1884 type: File 1C4: C:\Windows\System32\inetsrv\config
答案4
我遇到了这个问题,尝试了这里的几个答案,但都无济于事。不过,我能够简单地从升高命令提示符如下:
rmdir “C:\path\to\folder”/s
希望这对某人有帮助。