设备网络SDK开发使用手册 |
启动远程配置。
LONG NET_DVR_StartRemoteConfig( LONG lUserID, DWORD dwCommand, LPVOID lpInBuffer, DWORD dwInBufferLen, fRemoteConfigCallback cbStateCallback, LPVOID pUserData );
dwCommand宏定义 | 宏定义值 | 控制功能 | lpInBuffer对应结构体 | cbStateCallback |
---|---|---|---|---|
NET_DVR_GET_STREAM_INFO | 6023 | 获取已添加的流ID信息 | NULL | 返回状态、进度、查找到的流ID信息 |
NET_DVR_GET_MONITOR_PLAN_VQD | 5100 | 获取诊断服务器计划 | NULL | NULL |
NET_DVR_GET_MONITORID_VQD | 5101 | 获取对应计划内的监控点信息 | NET_DVR_PLAN_VQD_CFG | NULL |
NET_DVR_GET_VQD_DIAGNOSE_INFO | 6408 | 手动获取VQD诊断信息 | 通道号(DWORD类型)数组 | NULL |
typedef void(CALLBACK *fRemoteConfigCallback)( DWORD dwType, void *lpBuffer, DWORD dwBufLen, void *pUserData );
enum _NET_SDK_CALLBACK_TYPE_{ NET_SDK_CALLBACK_TYPE_STATUS = 0, NET_SDK_CALLBACK_TYPE_PROGRESS, NET_SDK_CALLBACK_TYPE_DATA }NET_SDK_CALLBACK_TYPE
dwType | 含义 | lpBuffer对应内容 |
---|---|---|
NET_SDK_CALLBACK_TYPE_STATUS | 状态值 | typedef enum { NET_SDK_CALLBACK_STATUS_SUCCESS = 1000, //成功 NET_SDK_CALLBACK_STATUS_PROCESSING, //处理中 NET_SDK_CALLBACK_STATUS_FAILED //失败 }NET_SDK_CALLBACK_STATUS_NORMAL; |
NET_SDK_CALLBACK_TYPE_PROGRESS | 进度值 | lpBuffer的值表示进度值(DWORD) |
NET_SDK_CALLBACK_TYPE_DATA | 信息数据 | lpBuffer的值表示信息数据,获取流ID时对应结构体:NET_DVR_STREAM_INFO |
-1表示失败,其他值作为NET_DVR_GetNextRemoteConfig、NET_DVR_StopRemoteConfig的句柄。接口返回失败请调用NET_DVR_GetLastError获取错误码,通过错误码判断出错原因。
调用该接口启动长连接远程配置后,还需要调用其他接口获取或者设置相关参数,如下表所示:
dwCommand宏定义 | 后续接口调用 |
---|---|
NET_DVR_GET_STREAM_INFO | NULL |
NET_DVR_GET_MONITOR_PLAN_VQD | NET_DVR_GetNextRemoteConfig |
NET_DVR_GET_MONITORID_VQD | NET_DVR_GetNextRemoteConfig |
NET_DVR_GET_VQD_DIAGNOSE_INFO | NET_DVR_GetNextRemoteConfig |
NET_DVR_GetNextRemoteConfig NET_DVR_StopRemoteConfig