c#中检测相机是否在线
时间: 2023-08-05 20:02:11 浏览: 51
在C#中检测相机是否在线,需要使用System.Management命名空间下的ManagementObjectSearcher和ManagementObject类。具体实现代码如下:
```csharp
using System.Management;
public bool CheckCameraOnline()
{
// 定义查询字符串
string query = "SELECT * FROM Win32_PnPEntity WHERE Caption LIKE '%Camera%'";
// 创建ManagementObjectSearcher对象并执行查询
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
ManagementObjectCollection collection = searcher.Get();
// 遍历查询结果
foreach (ManagementObject obj in collection)
{
// 判断是否为相机设备
if (obj["Caption"].ToString().Contains("Camera"))
{
// 判断设备是否为在线状态
if (obj["Status"].ToString().Equals("OK"))
{
return true;
}
}
}
return false;
}
```
该方法会返回一个bool类型值表示相机是否在线。