|
等 级:资深长老 |
经 验 值:1835 |
魅 力 值:315 |
龙 币:16473 |
积 分:5833.4 |
注册日期:2003-03-18 |
|
|
|
无法删除文件故障的Troubleshooting
关于Windows 2000/XP中无法删除文件故障的Troubleshooting
**************************************************************
为了方便,这里把“文件(File)”和“目录(Folder)”通称为“文件”
**************************************************************
【起因】
出现这类问题一般有以下几种情况:
1)位于NTFS文件系统上,而起使用了ACL(Access Control List),没有权限访问你要删除的文件;
2)文件正在被另外的程序使用者;
3)文件系统损坏导致无法访问你要删除的文件;
4)文件的路径太长导致无法访问;
5)文件名使用了非法的字符或Windows保留关键字。
【分析】
1)可以使用管理员帐户通过重新设定ACL的方法获得访问权限;
2)找到那个使用被删除文件的程序并关闭;
3)检查文件系统,排除错误;
4)路径过长,超过了大多数Windows所能接受的255个字节(NTFS文件系统没有这个问题);
5)因为Windows认为这个命名是不合法的或这个命名与硬件设备有关。常见的保留字有LPT1、CON等。
【解决】
1)对于这种情况,可以用下列方法解决:
使用管理员帐户登录,在无法访问的文件上点击鼠标右键选择属性,选择『安全』标签页,选择『高级』按钮,再选择『所有者』标签页,在“将所有者更改为”BOX里面选择管理员帐户,反色,接着点击“应用”按钮使所有者变为你自己(图1)。
该网址不再展示
最后点击2次确定按钮,关闭属性对话框。再次打开属性对话框,可以看到『安全』标签页下的“添加”按钮已经编程可选状态了,点击这个按钮,在“选择用户和组”对话框里面输入你要访问这个文件的帐户名(注意格式:计算机名\帐户名)(图2)。
该网址不再展示
点击确定按钮返回上一层对话框,然后在“帐户名的权限”BOX中选中完全控制复选(图3),点击确定即可重新获得访问权限。
同样,可以在命令行模式下使用cacls命令分配权限。
该网址不再展示
2)常见的故障发生在删除一个AVI文件的时候。因为Windows有一个预读机制,预读会使文件处于被使用状态,所以无法删除。
解决方法有很多:
-1.关闭全部资源管理器,使用命令del或rd删除文件或目录(推荐)
-2.删除注册表中下面这个键值:HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{87D62D94-71B3-4b9a-9489-5FE6850DC73E}\InProcServer32。建议导出备份这个注册键值,以便以后需要时复原
-3.进入DOS命令窗口,运行:REGSVR32 /U SHMEDIA.DLL 注销掉预读功能
-4.使用“Windows传统风格的文件夹”查看方式(文件夹选项--任务下面选择)
-5.使用能浏览本地文件的第三方工具,如FlashFXP、CuteFTP等。
3)当看到以下提示时就需要注意一下你的文件系统了:
< drive>:\<folder> is not accessible
The file or directory is corrupt and non-readable.The file or directory is corrupt and non-readable. The file or directory \<folder> is corrupt and unreadable.
Please Run the Chkdsk utility.
排除方法:使用chkdsk命令检查你的驱动器。修复受损的文件系统。起因有很多,例如:硬盘坏道、硬件设备的错误或软件的bug都有可能引起这个问题。
4)使用8.3格式缩小长度或更改路径中部分目录名以减少路径的长度。
例如可以暂时的把路径中某些目录改改名字,或在命令行模式下使用8.3格式。例如:假设你要删除的文件位于以下路径:
C:\Documentations\HOWTO\2003\May\WindowsDocumentations\ForWebsites_Forum\Tips\Smallfrogs\Smallfrogs_Test_Project\YuanChuan_Articls\20030530\TheTroubleShootingAboutCannotDeleteFilesInWindows\
以上目录已经能够足以表达意思呢,不过路径长度还是不够255字节。
那么可以输入:cd C:\Docume~1\howto\2003\may\window~1\forweb~1\tips\smallf~1\yuanch~1\20030530\thetro~1\
可以看到,使用8.3格式以后可以节省很多长度的。因为进入这种还有长路径的目录也是不成问题的。一旦进入了这类目录,就可以使用del命名随意的删除你想删除的文件了。
5)对于含有保留字的文件,当我们发出删除指令的时候,Windows会检查被删除的文件是否有合法的路径,如果你的文件名含有Windows认为的非法字符或保留字,那么删除就会失败。
我们有3种方法可以删除这类文件:
-1.采用Linux或其他非Windows的操作系统,以Linux/Unix为例:可以使用rm命令删除:
rm -d //driveletter/path using forward slashes/filename
rm -r "//C/Program Files/BadFolder"
-2.使用命令行工具的一个特殊参数解决:
RD\\.\<driveletter>:\<path>\<directory name>
DEL\\.\driveletter:\path\filename
在删除命令后面跟上\\.\参数就可以避免Windows检查文件名的合法性,因此可以删除含有Windows保留字或非法名字的文件。
-3.对于文件,如果可以使用通配符,那么也可以采用通配符解决:
DEL DEL PR?.*
DEL LPT?.*
|
|
|
|