设备网络SDK开发使用手册

NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login_V40等登录接口的返回值
dwCommand
[in] 设备配置命令,详见“Remarks”说明
lChannel
[in] 通道号,不同的命令对应不同的取值,如果该参数无效则置为0xFFFFFFFF即可,详见“Remarks”说明
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Remarks

不同的配置功能对应不同的结构体和命令号,如下表所示:

  • 通道号是指设备视频通道号,通过注册设备(NET_DVR_Login_V30)返回的设备信息(NET_DVR_DEVICEINFO_V30)获取模拟通道个数(byChanNum)、模拟通道起始通道号(byStartChan)和设备支持的最大IP通道数(byIPChanNum+ byHighDChanNum*256)、数字通道起始通道号(byStartDChan)。
  • dwCommand宏定义 dwCommand含义 lChannel lpInBuffer对应结构体 宏定义值
    NET_DVR_SET_IPPARACFG_V40 设置IP接入配置参数 组号,从0开始,每组64个通道 NET_DVR_IPPARACFG_V40 1063
    NET_DVR_SET_POE_CHANNEL_ADD_MODE 设置POE通道添加方式 通道号 NET_DVR_POE_CHANNEL_ADD_MODE 6125
    NET_DVR_SET_DVR_SYNCHRONOUS_IPC 设置是否为前端IPC同步设备参数 通道号 NET_DVR_SYNCHRONOUS_IPC 6006
    NET_DVR_SET_DVR_IPC_PASSWD 设置IPC用户名密码 通道号 NET_DVR_IPC_PASSWD 6008
    NET_DVR_SET_DVR_IPC_NET 设置前端IPC的网络地址 通道号 NET_DVR_IPC_NETCFG 6012
    NET_DVR_SET_CUSTOM_PRO_CFG 设置自定义协议参数 协议序号,从1开始 NET_DVR_CUSTOM_PROTOCAL 6117

    Return Values

    TRUE表示成功,FALSE表示失败。接口返回失败请调用NET_DVR_GetLastError获取错误码,通过错误码判断出错原因。

    以下是该接口可能返回的错误值

    错误类型 错误值 错误信息
    NET_DVR_NOERROR 0 没有错误。
    NET_DVR_NOINIT 3 SDK未初始化。
    NET_DVR_VERSIONNOMATCH 6 版本不匹配。SDK和设备的版本不匹配。
    NET_DVR_NETWORK_FAIL_CONNECT 7 连接设备失败。设备不在线或网络原因引起的连接超时等。
    NET_DVR_NETWORK_SEND_ERROR 8 向设备发送失败。
    NET_DVR_NETWORK_RECV_ERROR 9 从设备接收数据失败。
    NET_DVR_NETWORK_RECV_TIMEOUT 10 从设备接收数据超时。
    NET_DVR_ORDER_ERROR 12 调用次序错误。
    NET_DVR_PARAMETER_ERROR 17 参数错误。SDK接口中给入的输入或输出参数为空。
    NET_DVR_ALLOC_RESOURCE_ERROR 41 SDK资源分配错误。
    NET_DVR_NOENOUGH_BUF 43 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
    NET_DVR_CREATESOCKET_ERROR 44 创建SOCKET出错。
    NET_DVR_USERNOTEXIST 47 用户不存在。注册的用户ID已注销或不可用。
    NET_DVR_BINDSOCKET_ERROR 72 绑定套接字失败。
    NET_DVR_SOCKETCLOSE_ERROR 73 socket连接中断,此错误通常是由于连接中断或目的地不可达。
    NET_DVR_PROGRAM_EXCEPTION 76 程序异常。

    See Also

    NET_DVR_GetDVRConfig  NET_DVR_GetLastError