检测正在访问某个设备的进程

时间:2015-11-09 08:06:37

标签: c# winapi wmi

我需要做的是检测正在访问麦克风/网络摄像头设备的应用程序,以及用户命令“拒绝”访问正在使用的麦克风/网络摄像头设备。

我对这个主题进行了大量研究,并提出了以下关键问题:

  1. 可以使用SysInternal的handle.exe等实用程序搜索句柄,但由于许可证问题,我更希望能够在纯C#或免费实用程序中执行此操作。
  2. 要搜索设备的句柄,您需要知道它的物理对象名称,显然我还没有找到任何方法通过WMI获取此信息。
  3. 如何自动确定活动的麦克风/网络摄像头设备? 或者我是否需要查询用户以查找?
  4. 如果你能找到任何这些问题的答案,我将非常乐意阅读你的想法。

    感谢大家阅读并花时间处理这篇文章!问候。

1 个答案:

答案 0 :(得分:1)

不幸的是,在微软收购SysInternals后,他们决定不再提供下载工具的源代码。一些Older versions仍然可用,但handle.exe不在其中。

但由于source code的C ProcessHacker可用且该工具提供类似的功能,您可能会在代码中找到您要搜索的内容。