注:这篇HowTo多少有些脱裤子放屁,但不妨碍它仍然能携带一些知识点。

在拔出移动存储设备时,我都会很乖的先去右下角弹出它,但有些时候会遭受这样的待遇:

该设备正在使用中具有进程 ID 的应用程序System4停止删除_句柄

当确信没有程序在占用该设备时,这种提示让我觉得很操蛋,NTM说明白点会死啊~好吧,这时还不忍心直接拔的童鞋可以接着往下看:

其实MS有说明白的,只是没在消息框里体现,而是记录在事件日志里,大概是MS认为把故障细节暴露给用户是不友好的~真扯蛋,难道说的不明不白云里雾里就是友好了么,实在怕消息框放不下太多信息的话,可以给个超链嘛~口水稍多,望海涵,言归正传。运行eventvwr.msc即可打开【事件查看器】,其中在【系统】日志项中,不难找到刚刚拒绝弹出的相关事件:

该设备正在使用中具有进程 ID 的应用程序System4停止删除_消息框_02

事件中会指出是哪个进程捣的蛋,此时有两种选择,一是终止该进程,二是接着往下看(有些进程你终止不起):

用Process Explorer查看该进程的句柄:

该设备正在使用中具有进程 ID 的应用程序System4停止删除_句柄_03

如果插了多块移动硬盘,可能有必要打开磁盘管理,找HarddiskX与哪块硬盘对应,确认之后,关闭该句柄,再弹出试试~这回应该顺利了。

之所以说有点脱裤放屁,是因为这种情况下我相信是假“占用”,只是不知什么原因产生了这样的句柄又忘记关闭导致,所以直接拔也没事;而如果真的在占用,那么结束进程也好,强行关闭句柄也好,都会造成中断,与直接拔也没有区别,该丢失数据的还是会丢失。所以终极方法我想是,关机再拔,但如果因为什么鸟卡住关不了机,呵呵,那你想不拔都不行~