海康SDK(二) 设置GBT28181协议接入配置

使用接口

在这里插入图片描述
在这里插入图片描述

具体实现

        int channel = 1;
        public bool SetGbCfg()
        {
            //修改结果
            bool result = false; 
            //通道号
            int lChannel = channel;
            //获取结构体大小
            Int32 nSize = Marshal.SizeOf(typeof(CHCNetSDK.NET_DVR_GBT28181_ACCESS_CFG));
            //设置指针空间大小
            IntPtr ptrGb = Marshal.AllocHGlobal(nSize);
            //因为配置信息中很多都是不需要修改的,所以我先获取国标协议接入配置,再对想要修改的信息进行修改。
            CHCNetSDK.NET_DVR_GBT28181_ACCESS_CFG gbcfg = GetGbCfg();//获取国标协议接入配置
            //目前只对sip服务器地址进行修改
            gbcfg.szServerID = "192.168.11.25";
            //…… 
            Marshal.StructureToPtr(gbcfg, ptrGb, false);//结构体转换为指针 
            bool Sflag = CHCNetSDK.NET_DVR_SetDVRConfig(m_lUserID, (UInt32)CHCNetSDK.NET_DVR_SET_GBT28181_ACCESS_CFG, lChannel, ptrGb, (UInt32)nSize);
           
            if (Sflag)
            {
                result = true;
                 logMsg = string.Format("设备{0}修改国标成功!", ip);
                Console.WriteLine(logMsg);
            }
            else
            {
                //错误码
                uint iLastErr = CHCNetSDK.NET_DVR_GetLastError();
                logMsg = string.Format("设备{0}修改国标信息失败!错误码为:{1}", ip, iLastErr);
                Console.WriteLine(logMsg);
                result = false;
            }
            Marshal.FreeHGlobal(ptrGb);//释放指针 
            return result;
        }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值