过期罐头电脑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4984|回复: 0
收起左侧

“磁盘写保护”或“访问被回绝 ”惹起 的无法删除文件原因有哪些?

[复制链接]
复仇的小羊 2011-3-30 06:48:01 | 显示全部楼层
“磁盘写保护”或“访问被回绝 ”惹起 的无法删除文件原因有哪些?即便 是最简单的删除文件也可能遇到费事 ,要么系统提示“文件正在被另一个人或程序使用”,要么就是报告“访问被回绝 ”或“磁盘写保护”…… 还有无法删除文件原因。下面我们就来看看“磁盘写保护”或“访问被回绝 ”惹起 的无法删除文件原因有哪些。
原因一:文件正在使用中
在删除文件时,经常会遇到的一个问题是,文件正在使用,无法删除。假如 试图删除以独占访问而不是以共享访问方式打开,并且正在使用中的文件时,操作系统就会出现错误提示:“无法删除xxx:文件正在被另一个人或程序使用”。而另一种状况 则是,可以 使用删除命令删除文件,但在打开文件的进程释放该文件之前,文件实际上并未删除。
要解决上述问题,需要. 确定具有 文件打开句柄的进程,然后关闭此进程。在以前的Windows中,我们可以使用资源工具包的Oh.exe。但在XP中,安装好的Support Tools却不带Oh.exe。不过,XP提供了一个新的Openfiles.exe命令行工具,它可以 报告进程打开的各个文件。与Oh.exe类似 ,Openfiles.exe也要求打开系统内核监视,这会耗费 一些内存,并降低系统操作的性能。打开系统监视的命令是“Openfiles /local
on”,它会启用系统全局标志“维护对象列表”,需重新启动系统才能生效。重新启动系统后,在命令提示符下执行不带参数的“Openfiles”,即可看到各个进程打开文件的清单。

原因二:文件系统损坏
磁盘上的坏区、其他硬件问题 或者软件错误都可能会损坏文件系统,使文件出现问题而无法删除。典型操作失败的方式可能各不相同,当检测到文件系统损坏时,通常会收到一条提示运行Chkdsk的信息。

假如 遇到这种状况 ,可以在磁盘卷上运行Chkdsk适用 工具以纠正任何存在的错误。依据 损坏的性质,Chkdsk或许 可以 恢复文件数据,或许 无法恢复,但Chkdsk可以使文件系统返回到一种在内部一致的状态。有关Chkdsk适用 工具的命令及参数,可以在命令提示符下执行“Chkdsk
/?”查阅。

原因三:文件使用了存取控制列表
假如 某个文件使用了存取控制列表(Access Control List,简称ACL),而操作者又没有相应的权限,那么删除文件时就可能出现“访问被回绝 ”的提示。
通常状况 下,管理员具有获得 任何文件一切 权的隐含能力,文件一切 者也具有修改文件权限的隐含能力。不过,这些默认的权限是可以被修改的。

要解决因ACL导致文件无法删除的问题,就必须以具有相应权限的用户身份登录,或者是赋予自己. 删除文件的权限,然后才能删除文件。要注意的是,操作者必须具有 这些文件的一切 权才能更改权限。假如 是由于 文件使用了不标准 的ACL而不能使用某些安全工具显示或修改其权限时,可以尝试使用命令行工具Cacls.exe进行修改。

原因四:文件名使用了一个保留 称号
众所周知,像AUX、LPT1这样的称号 是为旧式DOS设备保留 的。为了向后兼容,在Windows中不允许使用这些文件名,也不能使用典型的Win32文件调用来创建它们。反之,假如 文件名是Win32命名空间中的一个保留 称号 ,则同样可能无法删除此文件。

要解决此类问题,可以在Linux或其他非Windows的操作系统下重命名或删除该文件。另外,假如 可以 使用特定的语法指定到该文件的路径,也可以使用一些内置的命令绕过典型的Win32保留 称号 检查。例如,在Windows XP中使用以下命令,可以删除名为“lpt1”的文件(Del命令后面加上“?”来避免Windows检查文件名的合法性): Del c:[/url]文件路径lpt1

原因五:无效的文件称号
假如 文件名中包括一个无效称号 ,例如文件名有一个尾随空格,或一个尾随句点,或者文件名仅由一个空格组成,同样可能无法删除该文件。值得一提的是,假如 使用典型的Win32语法打开称号 中有尾随空格或尾随句点的文件,则尾随空格或句点在打开实际文件之前会被去掉。因而 ,假如 在同一个文件夹中有两个分别名为“File.txt”和“File.txt ”的文件(注意第二个文件名后面的空格),当使用标准Win32调用打开第二个文件时,实际上会打开第一个文件。同样,假如 文件的称号 仅是“ ”(一个空格字符),当尝试使用标准Win32调用打开它时,实际上会打开该文件的父文件夹。在此状况 下,假如 尝试更改这些文件上的安全设置,就有可能会不测 更改其他文件上的设置。
与解决文件名使用保留 称号 的方法类似,可以使用一种恰当 的内部语法删除此文件。例如要删除包含尾随空格的文件,可以使用如下命令: Del c:文件路径(尾随空格的文件名)
原因六:文件路径太深无法访问
文件位于比最大路径字符数(MAX_PATH)更深的路径中,可能导致文件无法访问,当然,这种状况 较为少见。假如 路径深的原因是文件夹称号 太长,最烦琐 的解决计划 是使用自动生成的8.3称号 访问该文件。假如 8.3路径也太长,可以从根文件夹开始重命名文件夹,缩短它们的称号 ,以使目的 文件的路径深度不超越 MAX_PATH。若是文件的深度超越 128个文件夹,可以通过创建一个网络共享,使其位于文件夹树中尽可能深的位置,然后通过访问此共享来访问文件。
一般状况 下,假如 遇到因文件路径太深无法访问的状况 ,可以通过使用创建文件的软件来管理这些文件。也就是说,假如 有一个程序,它可以创建超越 MAX_PATH的文件,则我们也可以使用该程序来管理这些文件。此外,对于通过网络共享创建的深层次构造 的文件也可以通过使用同一共享来进行删除。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

一键重装系统|雨人系统下载|联系我们|网站地图|过期罐头电脑论坛

GMT+8, 2024-11-15 09:18 , Processed in 0.035084 second(s), 25 queries .

官方免责声明:本站内容来自网友和互联网.若侵犯到您的版权.请致信联系,我们将第一时间删除相关内容!

Powered by Discuz!

专注于win7_win10_win11系统下载装机

© 2010-2023 GQGTPC.Com

快速回复 返回顶部 返回列表