我在配置OpenCV环境以及使用VS2013运行代码时遇到的问题

朱老师让我运行一个github上的项目代码,如下:

https://github.com/lps683/TrafficsSignDetection

都整合到一个工程里准备运行时发现缺少很多头文件,问了学姐,学姐告诉我要安装OpenCV,并嘱咐我装一个2.xxx版本的。

于是我到官网上下载了这个:

然后高高兴兴地照着这个教程配环境:

https://blog.csdn.net/mars_xiaolei/article/details/78759041

配好了!跑程序吧!

什么?

去百度,好几篇博客都告诉我要修复VS,然后重启就好了。我照做了,没有用。

后来一个大佬告诉我,这个文件是系统里的,修复VS没有用,应该看看系统的问题。于是我又去微软官网,找到了这个:

那就开始吧!

可是……

这时候,大佬告诉我用cmd-replace命令:

出现了拓展错误……

回到文件夹,找到MSVCP140.dll,右键属性-安全,把权限全都打开,然后试着删除。

这是什么进程呢:

重启以后也不行。

至此,他们都说无解了……

然后我非常郁闷地发了一条说说,被周瑞奇大佬看见了,他说这个问题他在用VS2015打开VS2017建的项目的时候也遇到过。

然后他问了一个问题:所有项目都打不开吗?

然后我发现,我从发现这个问题以来,思路一直跟着查到的资料走,没有辨别过这个问题解决方案符不符合自己的情况(就在刚才写博客的时候我才发现在微软官网上找到的那个解决方法对应的报错方式根本和我遇到的报错不一样,我居然还用那个方法试了很久很久,简直是在浪费时间啊)

以至于,我每次用了一个方法就继续用那个项目试着跑,都没有想过是不是单个项目的问题!

然后周瑞奇大佬发现,原来我这个菜鸡根本不会用VS建工程

然后他远程教我建工程,此时又有了一个很重要的细节。

打开VS,他说,你要从“解决方案资源管理器”添加文件,你这个怎么一打开是属性管理器,我都懵了。

我随口说了一句,这是我今天配OpenCV环境的时候打开的。

然后挂了电话以后,我重新复制粘贴代码建了一个项目跑,期间大佬说他装一下我那个版本的OpenCV试试。

居然还是报一样的错。

这时候周瑞奇大佬突然说:

我知道了,应该是你的OpenCV的问题。

(因为他远程建了一个新项目,是能跑的,所以VS是没问题的,系统也是没问题的)

他说:

我是安装时才发现不对

2013对应的是vc12

你这是个vc14

我自闭了

然后今天早上还收到了朱老师的关怀:

BTW:

昨天大佬教我链接到cmd解决闪退的方法:

项目->属性(项目名称是什么,就是什么+属性,在弹出的对话框中点击配置属性->链接器->系统,在右边的子系统中选择控制台(/SUBSYSTEM:CONSOLE),点击确定,这时候按Ctrl+F5进行运行就可以让cmd停留。注明,必须按Ctrl+F5才能使cmd停留,否则还是会闪退。

原文地址:https://www.cnblogs.com/yigeqiu/p/10059521.html