Finding out which app is using the webcam

Solution 1:

As already suggested by harrymc, you can use Process Explorer to easily find out which programs currently use your Webcam. All you need to do is to find your Webcams Device Handle and search for it in Process Explorer.

First, search for your Webcam in the Device Manager, it should be under "Imaging devices" but can also be under "Sound, video and game controllers" if it has a built-in Microphone (like in my case).
Beware that it has two Device Handles in that case.

Right-click and select Properties (or Double-click), go to the Details Tab and search for "Physical Device Object name" in the Properties dropdown list and copy the value.

image

Now go to Process Explorer and click on "Find", then "Find Handle or DLL..." (or press CTRL+F) and enter your previously copied Device Handle.
Click search and after a bit of wait you will get a list with Processes using your Webcam.

image

Again: Beware that your Webcam's light might also be on because a built-in Microphone is in use, in which case you will also have to search for the Microphones Device Handle as well!

Solution 2:

My idea is that maybe you could use Process Explorer to search out which program has opened the device.

Try it first when it is open by Skype or some other known program. Process Explorer can show you which files and devices are opened by this program, to find out what is the name of the device. You could then use the Search function with the device name to see if it does find this program.

If this works, then in the future Process Explorer can find for you which program is using the webcam.

image

(Sorry, I don't have a webcam for testing this out.)

Solution 3:

Applications using "handles" to access various interfaces provided by OS. Device handles is actually "file handles".

Process Hacker ( http://processhacker.sf.net/ ) can search handles in all processes (Ctrl+F to open "Find handles and DLL's").

My webcam device handle was

\Device\USBPDO-6

I found that after comparing all \Device* handles opened by skype.exe while my webcam is on and off.