How to tell which program is using my disk?

Solution 1:

process explorer, from Mark Russinovitch Sysinternals (now owned by Microsoft) can do this:

in the Find menu, click "Find Handle or DLL..."

in there, type what you are looking for (in your case, for example, f: if that is the name of the disk you wish to know which program(s) is(are) still using)

it will then display all the processes that are using a handle or dll containing the string you were looking for (ex: containing f: , thus listing all programs still using something on f: or having their current directory set somewhere on f:)

(You can use the same thing to find out which process has open a given specific file, etc. )

Solution 2:

I suggest to use the Windows Sysinternals Handle to get a list of all open handlers because is very possible a program have left one open handler but not use it.

With the handle you can see what is open on this disk. Its a command prompt program, just type "handle" where you save it and thats all.

You can also type handle >> results.txt to save them on results.txt file and look them more easy.

The output is on this format:

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               

Solution 3:

Try these steps:

  1. Download Microsoft's Process Explorer
  2. Open the application
  3. Click on the I/O graph

enter image description here

  1. Mouse over your disk row

enter image description here

It should show you the executable running on that disk.