找出哪个程序在阻止你弹出移动盘
这玩意儿至今还比较玄学,下面是99.9%情况下能找到原因的方法。
排查步骤
打开任务管理器
-资源监视器
-切换到性能
,然后,如果是win10,左下角有“打开资源监视器”的按钮;如果是win11,“资源监视器”选项藏在右上角的的三个点的汉堡菜单里。

然后,就在这个页面,关联的句柄
后面的文本框中,输入无法弹出的U盘的盘符加一个英文冒号,比如上图中是W:
,然后回车,等待搜索,这个结果要一会儿。
接下来有几种情况:
如果是出来一些一般的程序,像winword.exe
、notepad.exe
之类的,那就说明这些程序正在使用U盘的驱动器号。关掉就行了。尤其一些最小化之后缩在托盘区的程序,很容易忘记关闭。如果是杀毒软件类,一般等一会儿扫描完就会自己关掉,手动关掉则不太容易。
如果是explorer.exe
,一般是文件窗口没关闭,或者(一点都不意外)是windows自身bug导致窗口关掉了,文件还没关闭,用任务管理重启explorer.exe
可解。
注意,如果出来好几个,并且其中一些不认识,那么先从认识的入手,因为不认识的进程可能是他们的附属。关掉之后重新搜索刷新。
比较麻烦的是svchost.exe
之类的,这说明是某个系统服务占用了,但很难反向查找,只能看打开的文件名猜测判断。
典型的,如$Extend\$Reparse:$R:$INDEX_ALLOCATION
或者$Extend\$ObjId:$O:$INDEX_ALLOCATION
这样的文件名,大部分情况下都是Everything
或者同类软件的日常索引。尤其固态U盘,由于不容易判断是不是移动盘,相关软件往往会自动索引并且不会主动关闭。
这时候,退出进程也不好使,关闭后台服务好使但太麻烦。打开这些软件,一般会有一些地方可以关闭特定盘符的索引,比如Everything
的设置
-索引
-NTFS
,按需调整选项。特别需要注意的是,如果有关闭Everything的索引,包含到数据库
和启用USN日志
两个选项都要关闭,否则你既搜不到文件,也不能弹出盘,相当尴尬。