How to find out what processes have folder or file locked?

.net-3.5, filelock, filesystems

Solution

Process Explorer will show you this. Ctrl-F will let you search for a file and list the process(es) that have that file open/locked. You can then close that handle using Process Explorer.

There's also a command line utility called `oh.exe` available for download. See here for more details

Problem

How do you go about querying running processes to find out what folders or files they have locked? (i.e. you go to eject a drive and you're told that it can't be ejected because it's in use) I'd like to either get an "off the shelf" download, or write a .NET 3.5 app to do this (primarily a Windows question).

Original source