2017-04-20 164 views
0

我使用的OpenCV在Windows上创建使用Qt程序禁用。 当我启动程序,有时,网络摄像头将无法启动。 cam.open(0)返回1(打开succesfull),但帧是空的。我花了很多时间在这方面,最后我发现问题是“AVG Protection”。当我启动该程序时,大约有50%的时间,我收到空帧。随着AVG卸载,它的工作时间100%。网络摄像头通过AVG杀毒

我猜AVG有时检测我的程序为恶意或东西。我尝试在AVG例外中添加该程序,但它没有改变任何内容。

我可以做一些编程,以防止这一点?

在这里非常感谢你,

亚历

+1

想想你在问什么 - 如果你能以编程方式阻止防病毒应用程序干扰你的软件,为什么恶意软件不会利用这个“功能“? – MrEricSir

+0

是的,我明白。由于AVG有时并不总是会阻止摄像头,所以我认为可能有些事情要做。还有其他建议吗?像我可以申请任何证书,让知道一些杀毒软件让我的程序运行? – alecs26

回答

1

同样的问题对我们来说。几天前,客户开始报告说,我们的应用程序不再从摄像机接收视频数据。 没有错误或引发任何异常。
昨天,我已复制上安装了AVG一台笔记本电脑这个问题。从我可以从日志中发现,该相机可以被发现和应用程序启动,但它并没有从中获得任何帧。也就是说,来自dscamerasession.cpp的presentFrame()方法不再被Windows进程调用,就像之前使用的那样。
有一个在AVG支持一个问题: https://support.avg.com/answers#!/feedtype=SINGLE_QUESTION_DETAIL&dc=All&criteria=ALLQUESTIONS&id=906b0000000DlgTAAS

他们的回答是: 请按照指示更改防火墙设置检查状态:打开AVG禅 - >网络安全 - >在点击菜单右上角 - >设置 - >组件 - >防火墙 - >自定义 - >网络配置文件 - >将网络从公共更改为私有(如果它处于私人状态,请将其更改为公共)。 然后检查你是否能够没有任何问题地访问它