大华相机C#学习之Enumerator类

构造函数

Enumerator()

        创建一个Enumerator实例。


常用方法

EnumerateDevices()

        枚举所有发现设备,返回List<IDeviceInfo>对象。

List<IDeviceInfo> devices = new List<IDeviceInfo>();

private void test_Click(object sender, EventArgs e)
{
    devices=Enumerator.EnumerateDevices();
    Console.WriteLine(devices.Count);
}

点击后运行结果:
1

 GetDeviceByGigeIP(string ip)

        通过IP地址(静态)获得设备对象,返回IDevice。(注意,获取设备前需要先用EnumerateDevices()来遍历设备)

private void test_Click(object sender, EventArgs e)
{
    devices=Enumerator.EnumerateDevices();
    device=Enumerator.GetDeviceByGigeIP("192.168.0.10");
    device.Open();
    if (device.IsOpen)
    {
        Console.WriteLine("相机已打开");
    }
    device.Close();
}

运行结果:
相机已打开

GetDeviceByIndex(int idx)

        通过索引值获取指定设备,返回IDevice。(注意:获取设备前需要先用EnumerateDevices()来遍历设备)

 private void test_Click(object sender, EventArgs e)
 {
     devices=Enumerator.EnumerateDevices();
     device=Enumerator.GetDeviceByIndex(0);
     device.Open();
     if (device.IsOpen)
     {
         Console.WriteLine("相机已打开");
     }
     device.Close();
 }

运行结果:
相机已打开

GigeCameraInfo(int idx)

        根据索引号idx获取设备信息对象,返回IGigeDeviceInfo。

private void test_Click(object sender, EventArgs e)
{
    devices=Enumerator.EnumerateDevices();
    IGigeDeviceInfo deviceInfo=Enumerator.GigeCameraInfo(0);
    Console.WriteLine("设备索引:"+deviceInfo.Index);
    Console.WriteLine("IP地址:" + deviceInfo.IpAddress);
    Console.WriteLine("Mac地址:" + deviceInfo.MacAddress);
}

运行结果:
设备索引:0
IP地址:192.168.0.10
Mac地址:38:af:29:c3:b0:44

GigeInterfaceInfo(int idx)

        获取当前主机的Gige接口信息,即与远程设备通信接口的信息。返回IGigeInterfaceInfo对象。

private void test_Click(object sender, EventArgs e)
{
    devices=Enumerator.EnumerateDevices();
    IGigeInterfaceInfo interfaceInfo = Enumerator.GigeInterfaceInfo(0);

    Console.WriteLine("IP地址:" + interfaceInfo.IPAddress);
    Console.WriteLine("子网掩码:" + interfaceInfo.SubnetMask);
    Console.WriteLine("网关:" + interfaceInfo.GateWay);
}

运行结果:
IP地址:192.168.0.50
子网掩码:255.255.255.0
网关:0.0.0.0

GigeForceIP(int idx,string ipAddress,string subnetMask,string defaultGateway)

        强制修改相机ip,如果成功,返回true;否则,返回false。(通过此方法修改的IP地址会在相机断电后回复成原来的IP)

private void test_Click(object sender, EventArgs e)
{
    devices=Enumerator.EnumerateDevices();
    IGigeInterfaceInfo interfaceInfo = Enumerator.GigeInterfaceInfo(0);

    bool rst=Enumerator.GigeForceIP(0,"192.168.0.11",interfaceInfo.SubnetMask,interfaceInfo.GateWay);
    if (rst==true)
    {
        Console.WriteLine("强制修改ip成功");
    }
}

运行结果:
强制修改ip成功

相关推荐

  1. 大华相机C#学习Enumerator

    2024-04-24 02:54:05       14 阅读
  2. 大华相机C#学习IStream

    2024-04-24 02:54:05       16 阅读
  3. 掘根宝典C++模板大全

    2024-04-24 02:54:05       17 阅读
  4. pythonenumerate()函数使用总结

    2024-04-24 02:54:05       15 阅读
  5. Python基础总结enumerate介绍使用

    2024-04-24 02:54:05       7 阅读
  6. C++】相关知识

    2024-04-24 02:54:05       7 阅读
  7. c++学习特殊设计与类型转换

    2024-04-24 02:54:05       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-24 02:54:05       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-24 02:54:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-24 02:54:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-24 02:54:05       18 阅读

热门阅读

  1. 数据治理——元数据管理实施步骤

    2024-04-24 02:54:05       18 阅读
  2. python基本语法与使用

    2024-04-24 02:54:05       20 阅读
  3. vue纯前端实现表格分页及条件查询功能

    2024-04-24 02:54:05       11 阅读
  4. 挂在Avalon总线上的AD7656芯片驱动verilog程序实现

    2024-04-24 02:54:05       12 阅读
  5. 【C语言笔记】memcpy和memncpy函数的异同点

    2024-04-24 02:54:05       14 阅读
  6. 力扣经典150题解析之三十四:有效的数独

    2024-04-24 02:54:05       31 阅读
  7. 【无标题】

    2024-04-24 02:54:05       14 阅读
  8. 【Qt事件】

    2024-04-24 02:54:05       9 阅读
  9. 【前端】npm常用命令

    2024-04-24 02:54:05       9 阅读
  10. Shell+sqlldr载数卸数

    2024-04-24 02:54:05       10 阅读
  11. 让多个域名都可以访问一个wordpress网站

    2024-04-24 02:54:05       14 阅读