前言:
记录一下大恒相机开发中的问题,如果能给和我一样正在摸索的小白一些帮助就更好了。
一、问题:
错误码: -8
错误描述信息: {Accessdenied:{1005}{GenICam::Client::CGVCPCtrlPort::__RecvReadRegCmdAck:line[394]}{TLError:The access to the requested device is denied.}}
原因:相机设备没有正常关闭
解决:两种方法
1、在IP配置工具中直接选择复位设备或连接设备
复位设备:等同于给设备掉电上电一次,相机内程序全部重新加载。
重连设备:等同于软件接口关闭设备,执行此操作后,允许用户重新打开设备
2、通过接口 GXGigEResetDevice 实现设备的复位/重连。
待补充
二、造成相机未正常关闭的的原因目前我遇到的有两个:
1.调试的时候(Debug模式)加了断点,设备在心跳时间内无法复位
心跳时间我理解的就是每隔一段时间发送一个信息给相机,告诉相机咱两还要连着。
解决:
#ifdef _DEBUG
//设置心跳超时时间 5min
ObjFeatureControlPtr->GetIntFeature("GevHeartbeatTimeout")->SetValue(300000);
#endif
每隔5min(可以自己设置)发送心跳包,所以调试的时候处于断点5min种内,相机还是连着的
2.没有运行关闭设备代码
2022/4/22修改