程序调试状态下,打开相机时出现报错-2147483130或0x80000203,怎么办?
问题分析:
在相机网络通信中,SDK内部线程会定时发送数据报包给相机,然后不断检测相机是否有回复,如果在超时时间内没有收到相机的回复,则该线程会判断相机已经掉线。这种机制类似于心跳,因此线程发送的数据包我们称之为“心跳包”。
用户在调试状态下,SDK会主动将相机心跳设置为60s,当用户断点调试或异常退出线程未关闭相机的情况下,相机就会等待60s心跳时间,才能被下一次应用程序链接,在此期间的链接操作,均会返回0x80000203或-2147483130即无权限访问。
解决方案
1. 在应用程序中使用通用函数接口设置心跳时间GEV Heartbeat Timeout(ms),示例如下,即应用程序异常退出后,等待3s就可重新连接相机:
探寻机器视觉新星|第二届“启智杯”机器视觉设计大赛获奖名单公布
2024-04-08 16:39:23