一、原因分析
1、文件正在使用中
在删除文件时,经常会遇到的一个问题是,文件正在使用,无法删除。如果试图删除以独占访问而不是以共享访问方式打开,并且正在使用中的文件时,系统就会出现错误提示:“无法删除xxx:文件正在被另一个人或程序使用”。而另一种情况则是,能够使用删除命令删除文件,但在打开文件的进程释放该文件之前,文件实际上并未删除。
要解决上述问题,需要确定拥有文件打开句柄的进程,然后关闭此进程。在以前的Windows中,我们可以使用资源工具包的Oh.exe。但在XP中,安装好的Support Tools却不带Oh.exe。不过,XP提供了一个新的Openfiles.exe命令行工具,它能够报告进程打开的各个文件。与Oh.exe相似,Openfiles.exe也要求打开系统内核监视,这会消耗一些内存,并降低系统操作的性能。打开系统监视的命令是“Openfiles /local on”,它会启用系统全局标志“维护对象列表”,需重新启动系统才能生效。重新启动系统后,在命令提示符下执行不带参数的“Openfiles”,即可看到各个进程打开文件的清单。
2、文件系统损坏
磁盘上的坏区、其他硬件故障或者软件错误都可能会损坏文件系统,使文件出现问题而无法删除。典型操作失败的方式可能各不相同,当检测到文件系统损坏时,通常会收到一条提示运行Chkdsk的信息。
如果遇到这种情况,可以在磁盘卷上运行Chkdsk实用工具以纠正任何存在的错误。根据损坏的性质,Chkdsk也许能够恢复文件数据,也许无法恢复,但Chkdsk可以使文件系统返回到一种在内部一致的状态。有关Chkdsk实用工具的命令及参数,可以在命令提示符下执行“Chkdsk /?”查阅。
3、文件使用了存取控制列表
如果某个文件使用了存取控制列表(Access Control List,简称ACL),而操作者又没有相应的权限,那么删除文件时就可能出现“访问被拒绝”的提示。
通常情况下,管理员具有取得任何文件所有权的隐含能力,文件所有者也具有修改文件权限的隐含能力。不过,这些默认的权限是可以被修改的。
要解决因ACL导致文件无法删除的问题,就必须以具有相应权限的用户身份登录,或者是赋予自己删除文件的权限,然后才能删除文件。要注意的是,操作者必须拥有这些文件的所有权才能更改权限。如果是因为文件使用了不规范的ACL而不能使用某些安全工具显示或修改其权限时,可以尝试使用命令行工具Cacls.exe进行修改。
4、文件名使用了一个保留名称
众所周知,像AUX、LPT1这样的名称是为旧式DOS设备保留的。为了向后兼容,在Windows中不允许使用这些文件名,也不能使用典型的Win32文件调用来创建它们。反之,如果文件名是Win32命名空间中的一个保留名称,则同样可能无法删除此文件。
要解决此类问题,可以在Linux或其他非Windows的操作系统下重命名或删除该文件。另外,如果能够使用特定的语法指定到该文件的路径,也可以使用一些内置的命令绕过典型的Win32保留名称检查。例如,在Windows
XP中使用以下命令,可以删除名为“lpt1”的文件(Del命令后面加上“?”来避免Windows检查文件名的合法性):
Del ?c:文件路径lpt1
5、无效的文件名称
如果文件名中包括一个无效名称,例如文件名有一个尾随空格,或一个尾随句点,或者文件名仅由一个空格组成,同样可能无法删除该文件。值得一提的是,如果使用典型的Win32语法打开名称中有尾随空格或尾随句点的文件,则尾随空格或句点在打开实际文件之前会被去掉。因此,如果在同一个文件夹中有两个分别名为“File.txt”和“File.txt”的文件(注意第二个文件名后面的空格),当使用标准Win32调用打开第二个文件时,实际上会打开第一个文件。同样,如果文件的名称仅是“ ”(一个空格字符),当尝试使用标准Win32调用打开它时,实际上会打开该文件的父文件夹。在此情况下,如果尝试更改这些文件上的安全设置,就有可能会意外更改其他文件上的设置。
与解决文件名使用保留名称的方法类似,可以使用一种适当的内部语法删除此文件。例如要删除包含尾随空格的文件,可以使用如下命令:
Del ? c:文件路径(尾随空格的文件名)
6、文件路径太深无法访问
文件位于比最大路径字符数(MAX_PATH)更深的路径中,可能导致文件无法访问,当然,这种情况较为少见。如果路径深的原因是文件夹名称太长,最简便的解决方案是使用自动生成的8.3名称访问该文件。如果8.3路径也太长,可以从根文件夹开始重命名文件夹,缩短它们的名称,以使目标文件的路径深度不超过MAX_PATH。若是文件的深度超过128个文件夹,可以通过创建一个网络共享,使其位于文件夹树中尽可能深的位置,然后通过访问此共享来访问文件。
一般情况下,如果遇到因文件路径太深无法访问的情况,可以通过使用创建文件的软件来管理这些文件。也就是说,如果有一个程序,它可以创建超过MAX_PATH的文件,则我们也可以使用该程序来管理这些文件。此外,对于通过网络共享创建的深层次结构的文件也可以通过使用同一共享来进行删除。
二、解决方法
1、 关闭“简单文件共享”:
① 单击“开始”,然后单击“我的电脑”。
②在“工具”菜单上,单击“文件夹选项”,然后单击“查看”选项卡。
③在“高级设置”下,单击以清除“使用共享向导 (推荐)”复选框,然后单击“确定”。
2、 右键单击您希望获得 其所有权的文件夹,然后单击“属性”。
3、 单击“安全”选项卡,然后单击“安全”消息框(如果有出现)中的“确定”。
4、 单击“高级”,然后单击“所有者”选项卡。
5、 在“名称”列表中,单击您的用户名,如果您是作为管理员登录的,请单击“Administrator”,或者单击“Administrators”组。如果您希望获得该文件夹内容的所有权,请单击以选中“替换子容器及对象的所有者”复选框。
6、 单击“确定”。
您可能会收到以下错误信息,其中 Folder 是您想获得其所有权的文件夹的名称:
You do not have permission to read the contents of directory Folder.Do you want to replace the directory permissions with permission s granting you Full Control?All permissions will be replaced if you press Yes。。。。。。。。。。。。。。。。。。。。。。。
7、 单击“是”即可。
8、 单击“确定”,然后对该文件夹及其内容重新应用您希望的权限及安全设置。
三、使用文件粉碎机删除
1、首先,当文件正在被使用时,删除一般会失败。这时可以使用金山毒霸百宝箱中的文件粉碎器。将目标文件或文件夹添加到文件粉碎器的删除列表
2、下载安装unlocker,右键选中某个目标文件,在弹出菜单中选择unlocker解锁,然后在对话框中选择解锁并删除。
3、如果怀疑存储器介质损坏,就需要修复磁盘之后,再操作。
只需要在磁盘图标上点右键,在磁盘属性对话框里选择磁盘查错,按提示操作即可完成。修复存储故障之后,再删除就不会报错。
4、对于文件夹访问权限的设定,导致的不可删除,这种情况很容易被忽视。若以上方法均失败。就需要观察是不是当前用户没有该文件夹的完全控制权限。需要在该文件夹图标上点右键,弹出菜单中选择安全,再将当前用户或者将everyone用户添加为完全控制。
以上就是电脑文件无法删除提示访问被拒绝的解决方法了,出现上述情况不是电脑中病毒了,只要修改系统的权限设置或者使用文件粉碎机就能彻底删除对应文件了。
2023-09-14
2023-10-05
2023-10-09
2023-09-14
2024-02-09
2023-09-06
2016-01-11
2015-12-13
2024-06-05
2023-12-25
2024-08-06
2024-07-17
2024-07-13
2024-07-13
2024-06-14