如何删除“锁定”文件?


63

在Windows XP上,当我尝试删除特定文件时会显示:

无法删除blah.blah:请确保磁盘未满或受写保护,并且当前未使用该文件。

如何解决此警告并将其删除?


我知道有问题的文件是类似Trojan的病毒,正在尝试从我的计算机发送垃圾邮件。但是我不知道如何删除愚蠢的东西。我确实有一个防病毒软件,但是由于某种原因,它没有拾取此文件,尽管它拾取了许多相似的文件。
罗恩·塔芬

在这里我的问题的答案:superuser.com/questions/6607/…可能对您也有帮助...
jerryjvl

如果您知道木马已在您的系统上运行,您将无法再信任它,安全的解决方法是从已知的好的媒体重新安装。
Shadok

您可以通过使用Linux生活USB删除锁定的文件
阿克沙伊Pethani

Answers:


54

要成功删除锁定的文件,您将需要确定锁定文件的进程。您需要先退出该过程,然后删除该文件。要知道哪个进程已锁定文件,您需要一个工具,例如Microsoft Sysinternals的Process Explorer(PE)。

一旦安装了PE ...

  1. 单击查找菜单,然后选择查找句柄或DLL。
  2. 键入文件名(被某个进程锁定的文件名。)
  3. 输入搜索词组后,单击搜索按钮

您应该看到正在访问文件的应用程序列表:

流程浏览器

现在,您可以使用PE或其他方法终止令人讨厌的过程。


SysInternals实用工具是很棒的工具,在这里值得花10分钟浏览其他工具:technet.microsoft.com/zh-cn/sysinternals/bb795533
Shadok

在Windows 7中,如果您尝试删除已锁定的文件,则错误消息将告诉您该进程已被锁定
Garry English

1
在Windows 10上,Process Explorer没有显示锁定的文件夹,但是LockHunter找到并解锁了该文件夹。
Michael Freidgeim '02

32

解锁器。您也可以尝试启动进入安全模式(或只是重新启动),然后查看是否可以删除它。

编辑(2013-02-09):我发现了更好的东西。 LockHunter


1
当我下载此文件时,我的病毒扫描程序说有一个木马:Yabector.A ??????
Natrium,2009年

仅供参考:Unlocker的作者指出,这些警报是误报:ccollomb.free.fr/blog/?p=69
Isxek 2010年

3
Unlocker现在捆绑了广告软件和工具栏。远离!!!
莉莉丝·

4
或者只是取消选中询问您是否要安装它们的框?
LawrenceC

1
LockHunter解锁了该文件夹,该文件夹未在Process Explorer中显示
Michael Freidgeim


4

一种简单的CLI方法是:

  • 下载手柄,这只是一个小的命令行工具
  • 以管理员身份打开命令提示符,进入目录
  • handle <part_of_the_path_of_the_locked_file>
  • 从输出确定PID
  • 现在你可以
    • 终止正在运行的进程taskkill /pid <the_PID> /f/f表示“强制”)
    • 或关闭手柄而不终止进程: handle -p <the_PID> -c <hexadecimal_code_of_the_handle>
  • 现在您可以删除锁定的文件

2

当我有一个无法删除的文件时,例如从要试用的某个应用程序中,我重新启动并查看是否可以删除它。如果失败,我要么:

  1. 引导到安全模式并删除(如其他地方所提到的)
  2. 使用Live CD或Rescue CD进行引导,然后使用CD工具安装驱动器,然后删除文件。

这就是为什么我使用Sandboxie(http://www.sandboxie.com/)测试新应用程序的原因之一。Sanboxie使清除应用程序安装过程中产生的破坏非常容易。

如果您的计算机受到威胁,大多数安全专家会强烈建议您全新安装系统。

如果您已感染木马:

  1. 您应该备份所有数据,其中可能包括重要的配置文件(例如,浏览器设置,或者至少是书签)。
  2. 然后,您应该全新安装系统,应用所有可用的安全补丁,然后安装某种病毒和/或恶意软件扫描程序。
  3. 最后,在还原文件之前,请使用新清理的系统或其他清理系统扫描所有备份的文件。

仅在最幸运的情况下,才可以尝试手动清洁系统,而您永远不知道是否遗留了任何东西。我建议不要冒险。


2

尝试使用Unlocker之类的程序(仅适用于x86)。您可以使用它查看所有锁,并根据需要将其删除。

对于x64,可能也有类似的程序。如果没有的话,一种更复杂,更通用的方法是使用诸如Process Explorer之类的程序,在其中搜索包含文件或程序名称的句柄,并删除所有看到的句柄。


2

可以在这里找到有关此内容的精巧教程:

http://rajendrakhope.wordpress.com/2013/08/23/finding-out-which-process-is-locking-a-file-or-folder-in-windows-or-deleting-a-locked-file-视窗内/

编辑:

通常这并不容易,但是Microsoft对我们来说确实很容易。Microsoft为IT专业人员和系统管理员创建了一套名为“ Windows Sysinternals”的软件。该套装由各种微型但功能强大的软件工具组成,用于管理,故障排除和诊断Windows系统和应用程序。

您可以下载整个套装

或任何单个实用程序

今天我们需要解决的问题是“ Process Explorer”,可以从以下网站下载:

http://technet.microsoft.com/zh-cn/sysinternals/bb896653

从此处下载并运行“ procexp.exe”工具。

填充所有正在运行的进程将需要一些时间。

在工具栏或菜单栏中查找查找工具。

打开此查找句柄或DLL框以搜索阻止句柄。

在此查找框中,键入要锁定的文件或文件夹的确切名称。

搜索实用程序将找到正在使用或打开文件的进程或软件的句柄。单击搜索结果以在主窗口下部窗格中查看详细信息。

在这种情况下,记事本打开了我文件的句柄,阻止我删除文件/文件夹。

右键单击文件句柄条目,然后选择“关闭句柄”。

是的,这真的很重要!您必须知道要关闭的内容。

单击是继续!

现在您可以重命名/删除/移动或编辑文件/文件夹了


1
虽然从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
Mokubai

1

看到您的评论后,最好再使用其他防病毒软件。与之关联的所有其他文件也将从系统中删除。

当然,Raven的答案是正确的,但是如果您确定该文件是蠕虫/病毒的一部分,则最好使用实际的防病毒软件将其删除。


0

使用Windows资源监视器(内置应用程序)

  1. 按键盘上的Windows键,键入resmon.exe,然后按Enter。
  2. 在出现的窗口中,单击“ CPU”选项卡。
  3. 在顶部的第三栏中,您应该看到标签“关联的句柄”。
  4. 在“搜索句柄”栏中键入您要关闭的文件的名称,然后单击放大镜图标。
  5. 找到正在使用您的文件的程序。
  6. 用相关文件右键单击程序,然后选择“结束进程”。 在此处输入图片说明 一切荣耀归于https://www.computerhope.com/issues/ch000714.htm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.