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

16 windows windows-8

Windows 8 拒绝让我卸载硬盘,说它正在使用中。

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

是否有程序可以为我提供使用硬盘驱动器的所有程序的列表

Oli*_*lac 10

来自 Mark Russinovitch Sysinternals(现在归微软所有)的process explorer可以做到这一点:

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

在那里,输入您要查找的内容(例如,f:如果这是您想知道哪些程序仍在使用的磁盘名称)

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

(您可以使用相同的方法找出哪个进程打开了给定的特定文件等)


Ari*_*tos 6

我建议使用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               
Run Code Online (Sandbox Code Playgroud)


Fer*_*gus 1

尝试以下步骤:

  1. 下载 Microsoft 的Process Explorer
  2. 打开应用程序
  3. 单击 I/O 图

在此输入图像描述

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

在此输入图像描述

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

  • Process Explorer 将显示磁盘 I/O 最多的进程。这是所有磁盘上的磁盘 I/O,而不仅仅是发问者感兴趣的磁盘上的磁盘 I/O。此外,程序可以仅在外部磁盘上保持文件打开,从而阻止它被移动,但不能读取或写入外部磁盘。文件,因此没有任何磁盘 I/O。 (2认同)
  • 对 Werner 评论的补充:这在 Windows 术语中称为“句柄”。参见奥利维尔的回答。 (2认同)