*.exe触发了一个断点--opencv人脸检测

*.exe触发了一个断点–opencv人脸检测

利用opencv进行人脸检测,遇到一个十分不解的问题,每次程序退出都会触发断点,单步调试无数次根本没用,最后偶然得以解决,记录在此,防止后来者踩坑。

事情发生在女朋友的电脑上,她之前装的vs2010,然后我给她推荐vs2013,就装上vs2013,但是她的C盘太小,空间不够,就使劲删,把2010也给卸载了,并且删了一大堆东西。。哎,C盘空间大,之后的什么麻烦都可以跳过啊!!好不容易装好后,最简单的helloworld都不能运行,不知道把什么依赖库给删了,自己对着我电脑上的设置,一项一项给她对照设置,把vs的基本库手动添加了一遍,然而事情过得有些时日了,并且乱七八糟的不记得了。。。你们若是遇到这样的问题,最简单的方法就是重装了,总之她重装很麻烦,,,所以这样,,,然后我在我的电脑上写了个人脸检测的例程,跑的好好地,然后复制到她的电脑上,就出问题,每次退出都会触发断点,网上搜,大体是这样的问题:
1、dll链接出问题
2、堆释放出问题
但是我的电脑上和她链接的是同样的opencv249里面的dll,这个问题弄了好久好久,最后抱着试一试的心态,将检测的语句屏蔽掉,然后运行,这时候出现有未解决的错误,然后我在调用堆栈哪里发现,未加载opencv249core.dll,隐约发现问题所在,在我的电脑上同一个地方设置断点,在调用堆栈里面没有这个信息,更加确定问题出在这里了,然后双击里面的一个判断opencv249core.dll的语句,发现给出的说明说在xx/opencv/build/x86/vc10/lib/opencv249core.dll,找不到,瞬间明白,是环境变量链接到vs2010对应的opencvdll版本(因为之前装过vs2010也配置过opencv),然后之后配置vs2013的时候,之前的环境变量配置没有删掉,进去系统变量里面看,在path中果然发现了之前配置opencv留下的路径,删除之,然后重启,再次运行,问题解决。。。

心塞

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值