Windows可以告诉我USB驱动器在使用什么吗?


98

作为我的好公民,我左键单击任务栏中的“安全删除硬件”图标,然后选择要卸载的USB驱动器。

然后我得到消息:

Windows无法停止您的通用卷设备,因为它正在使用中。关闭任何可能正在使用该设备的程序或窗口,然后再试一次。

当然,作为操作系统,它确切知道哪些应用程序正在使用我的设备。那为什么不告诉我呢?

还是我可以找到一种方法?


1
在Vista上,我有很多次我无法弄清它,并且在我重新启动/关闭之前它不会“释放” USB。升级到Win7之后就没有出现此问题,因此,我认为,至少在我的PC上,这是系统驱动程序问题。
BBlake,

Answers:


57

您可以使用Sysinternals Process Explorer查找打开的任何文件的句柄。只需选择Find菜单,然后选择Find Handle or DLL。在打开的对话框中,在搜索框中输入驱动器号。搜索结果应显示从驱动器打开的所有文件以及打开这些文件的过程。


4
在终止有害进程之后,Windows仍不会释放USB驱动器。走吧....
格兰特

2
我只使用资源管理器浏览了该驱动器。然后,从cmd.exe外壳程序在该驱动器上运行备份脚本,该脚本已完成。关闭cmd.exe窗口。使用Taskmgr杀死并重新启动Explorer.exe。仍然,驱动器正在使用中,不会弹出。
哈兹

3
Process Explorer找不到M:
哈兹

2
如果Process Explorer没有显示任何内容,则可以使用Nirsoft的OpenedFilesView软件。您不会看到哪个程序正在使用驱动器(或者Process Explorer也可以找到它),但是您仍然会看到句柄,使用过的文件,并且有可能关闭它们(如果您有风险的话)
LeFauve

4
Windows资源管理器本身有时可以锁定驱动器。您可以在Windows 10的任务管理器中重新启动Windows资源管理器(一直向下滚动以找到它)。在Windows的旧版本中,您将必须结束Explorer.exe并从“文件”菜单中明确运行explorer.exe。
Christopher Hostage

112

更简单的方法:当您尝试弹出可移动驱动器时,Windows(至少10个,AFAIK)会在事件日志中创建一个条目,但由于进程已锁定而无法创建。两个事件ID 225将显示进程ID和负责锁定的进程的名称。

一步步:

1)启动事件查看器

2)打开“ Windows日志”,然后打开“系统”

3)右键单击“系统”,然后选择“过滤当前日志”

4)在出现的对话框中,输入“ 225”(不带引号),显示“所有事件ID”

5)然后,您将看到与由于进程锁定驱动器而无法弹出有关的所有事件。

6)查看所有这些条目上的时间戳,并找出与您尝试弹出驱动器的实际时间相关的时间戳。

7)采取适当的措施。在大多数情况下,正常结束任务(关闭具有锁的程序)是可以的。也可以停止Windows Search服务。停止防病毒扫描应该可以(如果您当时不怀疑自己有任何病毒)。进入任务管理器并终止进程可能不行。如何解决这个问题超出了这个问题的范围。

8)在(动作)面板(位于右图框)中(储存检视...),您可以将[储存筛选器至自订检视...],这样您就可以在[自订检视](位于[ Windows日志”)

进程ID: 事件查看器条目

流程名称: 事件查看器条目

8)如果您没有其他带有进程名称的条目,则系统进程(进程ID 4)正在保存您的驱动器。要解决这一问题,您将不得不进行磁盘管理,并使要弹出的驱动器脱机。如果文件在启动驱动器上,则无法使其脱机。在这种情况下,请参阅以下注释:

更新2018年:我已经看到诸如WhatsApp Desktop之类的应用程序通过系统进程在Chrome Canary上进行处理。由于您无法弹出启动盘(因为正在使用中),解决方案是使用另一个漂亮的Sysinternals实用程序Handle。关闭具有锁定文件的程序后,启动句柄并运行(作为示例),handle64 "Chrome SxS\Application\chrome.exe"以查看在具有PID 4锁的文件上是否仍然存在该句柄。通过反复试验,关闭每个正在运行的程序,直到锁定文件上没有句柄为止。

最佳方法(收费)

下载并运行SafelyRemove。它可以帮助您弹出驱动器,如果无法弹出,则会显示哪些进程已锁定:

在此处输入图片说明


1
您能告诉一下225号吗。如何获得?
Ajeeb.KP,2016年

3
The application System with process id 4 stopped the removal or ejection for the device ...好吧...我会尝试禁用它Distributed Link Tracking Client,看看是否有帮助。
Tithen-Firion

17
Windows 10任务管理器也可以防止删除!谁新来的。
Alex Che

3
也适用于win7。可能在win8上也能正常工作。感谢您使用此方法。这个问题可能令人发指。
Syndacate

2
有用的提示。感谢那。我保存了一个自定义视图“锁定设备”,以供将来快速访问此筛选视图。
史蒂夫·克兰

6

您还可以使用wevtutil.exe(自Windows 7开始)使用命令行查询Windows日志,同时知道Windows Kernel-PnP使用事件ID 225记录系统(始终具有进程ID 4)拒绝删除或弹出该Windows日志。设备USB \ VID _ ####&PID _ ############(其中#表示十六进制数字)。

wevtutil qe System /q:"*[System[(EventID=225)]]" /c:5 /f:text /rd:true
  • qe System:从系统日志中查询事件
  • / q:使用XPath查询
  • EventID=225 表示系统拒绝了弹出请求
  • / c:5:要检索的条目数(此处为5)
  • / f:text:格式(默认为xml)
  • / rd:true:逆序(从新到旧)

我在批处理脚本中使用它。


5

对我来说(Windows 7)。

  1. 按下Windows
  2. 在“搜索程序和文件:中键入:diskmgmt.msc
  3. 在搜索列表中找到条目并右键单击- 选择以管理员身份运行
  4. 输入管理员凭据以运行“磁盘管理”(如果需要)
  5. 查找不会弹出磁盘列表的有问题的USB驱动器
  6. 左面板,右键单击选择“ 弹出
  7. 处理“应该”关闭-您始终可以仔细检查sys internals进程浏览器

注意: “安全删除硬件并弹出媒体”任务栏图标不再显示USB驱动器-仅三个点

  1. 物理卸下驱动器

4
Windows 7磁盘管理中没有左手面板或弹出命令。(版本1.00,根据“帮助/关于”)。我可以缩小,删除,将其标记为活动,格式化,...不弹出。
卡兹(Kaz)2016年

1
也找不到“弹出”,但是“脱机”选项完成了该工作。并且,当重新连接存储设备时,请不要忘记再次将其设置为联机。
Adriano P

2
最近,我使用“脱机”来停止我的外部USB-SSD磁盘,该磁盘很可能是系统(Win 10)以某种方式使用的,但是“安全删除”确实起作用了。一段时间后,我重新插入了该磁盘,并获得了带有“ RAW”分区的磁盘。通过执行chkdsk /f f:文件系统以某种方式进行了重新设计,但是所有内容都落入了“ found.000”中。所以...这种方法看起来并不真正安全。幸运的是,我在该磁盘上没有任何真正重要的东西……
Xtra Coder

5

这是一个快速的PowerShell命令,用于查询事件日志并显示哪个应用程序阻止了驱动器弹出(适用于Windows 10,可能也适用于7/8)

Get-EventLog -LogName System -after (Get-Date).AddHours(-1) | Where-Object {$_.EventID -eq 225} | Sort-Object TimeGenerated | Format-Table -Wrap

输出将列出过去一小时系统无法弹出磁盘驱动器的所有实例。的消息列显示堵塞喷出的过程。在下面的示例中,任务管理器实际上是罪魁祸首,我可以在关闭任务管理器后弹出。

PS C:\Users\Jonathan> Get-EventLog -LogName System -after (Get-Date).AddHours(-1) | \Where-Object {$_.EventID -eq 225} | Sort-Object TimeGenerated | Format-Table -Wrap

   Index Time          EntryType   Source                 InstanceID Message
   ----- ----          ---------   ------                 ---------- -------
   14692 Sep 07 10:50  Warning     Microsoft-Windows-Ke          225 The application \Device\HarddiskVolume4\Windows\System32\Taskmgr.exe with process id 11972 stopped
                                   rnel-PnP                          the removal or ejection for the device USB\VID_0781&PID_5575\200445301013C111B1A0.
   14693 Sep 07 10:50  Warning     Microsoft-Windows-Ke          225 The application \Device\HarddiskVolume4\Windows\System32\Taskmgr.exe with process id 11972 stopped
                                   rnel-PnP                          the removal or ejection for the device USB\VID_0781&PID_5575\200445301013C111B1A0.

3

您可以启动resmon.exe(通过WIN + R),依次转到磁盘>磁盘活动>按文件排序现在您可以查看系统正在访问的所有文件以及正在访问这些文件的进程,并按文件路径排序(哪个btw开始)与驱动器号)。可能不适用于所有情况,但这是一种简单的方法。

重新启动计算机似乎“释放”了设备使用情况。同样,为了更快地删除,您可以在设备的“硬件”部分禁用Windows缓存,有时窗口花费的时间比将刷新到外部磁盘的缓存要长,并且会显示该消息,表明该设备正在使用中(因为Windows本身)


与此类似:在resmon.exe中的“ CPU”选项卡中。向下滚动到“关联的句柄”框。那里有一个“搜索句柄”搜索框,您可以在其中输入锁定驱动器的字母。
安德鲁(Andrew)

2

如果打开“我的电脑”,而驱动器未在“可移动存储”标题下列出,则Windows由于某种原因会将其视为固定的系统资源。您将必须卸载驱动器上的所有分区。

如果是这种情况,请打开“计算机管理”,然后转到“磁盘管理”。对于设备上的每个分区,右键单击该分区,选择“更改驱动器号和路径”,然后删除分配给该分区的所有驱动器号。一旦这样做,您应该会发现“安全弹出”功能可以按您希望的那样工作。


1
完全按照您在运行Windows 7 Home Premium的笔记本电脑上所描述的那样工作。我确实希望Windows中的按钮使用单词“ Unmount”而不是“ Remove”(这在我看来类似于“删除”)。
steveOw

0

Windows报告正在使用USB ...与这里的其他所有人一样。

在Windows 10中,Ctrl + Alt + Del进入任务管理器。

滚动查找-Windows资源管理器。并突出显示。

右下角是一个很好的友好按钮,称为“重新启动过程”

再次三重检查“ Windows资源管理器”是否是突出显示的唯一内容。

鼠标左键单击友好的按钮“重新启动过程”。

我只有一个浏览器,其他人有时只有两个。只要注意哪一个又回来了。尝试关闭/弹出USB。我的工作正常,关闭USB。

如果您没有退出/关闭,则可能是另一个资源管理器。重试,然后恢复该状态。祝好运。


4
欢迎超级用户:请再次仔细阅读问题。你的回答不回答原来的问题“Windows可以告诉我什么是用我的USB驱动器?”请花几分钟的时间,并宣读: - superuser.com/help .Answering:superuser.com/help/how-to-回答,再次欢迎您来到superuser.Thankyou
mic84,18年
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.