如何判断哪个程序正在使用我的磁盘?


12

Windows 8拒绝让我卸载正在使用的硬盘驱动器。

我找不到哪个程序正在使用它。

是否有一个程序可以为我提供所有使用硬盘的程序的列表

Answers:


7

Mark Russinovitch Sysinternals(现在由Microsoft拥有)的流程浏览器可以执行以下操作:

在“查找”菜单中,单击“查找句柄或DLL ...”

在其中输入您要查找的内容(例如,f:如果您要知道正在使用哪个程序的磁盘名称,则为该名称)

然后它将显示正在使用包含要查找的字符串的句柄或dll的所有进程(例如:contains f:,因此列出所有仍在使用某些程序f:或将其当前目录设置在某处的程序f:

(您可以使用同一件事来确定哪个进程打开了给定的特定文件,等等。)


+1,因为这是更具体的答案:找出正在使用的驱动器。
RolfBly

4

我建议使用Windows Sysinternals句柄来获取所有打开的处理程序的列表,因为程序很可能留下了一个打开的处理程序但不使用它。

使用手柄,您可以看到此磁盘上打开的内容。它是一个命令提示符程序,只需在保存它的地方键入“ handle”即可。

您也可以键入handle >> results.txt将其保存在results.txt文件中,并使它们看起来更容易。

输出采用以下格式:

Handle v3.46      
Copyright (C) 1997-2011 Mark Russinovich         
Sysinternals - www.sysinternals.com          

------------------------------------------------------------------------------        
System pid: 4 NT AUTHORITY\SYSTEM        
  934: File  (---)   C:\Documents and Settings\SQL_User\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat        
  938: File  (---)   C:\Documents and Settings\SQL_User\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat.LOG          
  93C: File  (---)   C:\Documents and Settings\SQL_User\NTUSER.dat.LOG         
  948: File  (---)   C:\Documents and Settings\SQL_User\NTUSER.DAT               

我不知道为什么在这里-1。
亚里斯多斯

1

请尝试以下步骤:

  1. 下载Microsoft的Process Explorer
  2. 开启应用程式
  3. 点击I / O图

在此处输入图片说明

  1. 将鼠标悬停在磁盘行上

在此处输入图片说明

它应该显示在该磁盘上运行的可执行文件。


2
Process Explorer将显示磁盘I / O最多的进程。这是所有磁盘上的磁盘I / O,不仅是发问者感兴趣的磁盘。程序还可以仅使文件在外部磁盘上保持打开状态,从而阻止其移动,但不能从磁盘上读取或写入文件。文件,因此没有任何磁盘I / O。
Werner Henze

2
除了Werner的评论:在Windows术语中,这被称为“句柄”。参见奥利维尔的答案。
Zero3
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.