opencv3.0使用过程中出现“无法定位程序输入点”问题
【1、解决“无法定位程序输入点。。。于动态链接库MSVCR110D.dll上”问题】
我在win7+vs2013上使用opencv,前一天使用都是正常的但是今天用的时候突然间出现“无法定位程序输入点。。。于动态链接库MSVCP110D.dll上”。
首先,在网上去找MSVCP110D.dll动态链接库,然后复制到windows/system32中。但是程序依然报这种错误,有时候又说“无法定位程序输入点。。。于动态链接库MSVCR110D.dll上”。找了好长时间,最终重装了vs2013,opencv还是不行。
。。。
最后突然间想起来,要不重新从头开始再配置一次。因为我只是重新装了程序但是没有重新配置。在我重新配置时,发现系统环境变量中没有“C:\Program Files\opencv\build\x86\vc12\bin”这个变量。添加后问题解决了。
注意:童鞋们不要在环境变量的最后加上“;”。
【2、解决opencv core中hpp文件unicode编码问题】
终于程序可以运行了^_^ 。但是在编译时老是会出现,warning“该文件包含不能在当前代码页中表示的字符。请将文件保存为unicode格式文件”。
解决的办法是:根据提示找到相应的文件,把他拖到vs2013中(总之要用vs2013)打开。“ctrl+A”全选文件之后选择“文件–>高级保存选项…”,在“编码”中选择“unicode - 代码页 1200”,确定之后“ctrl+S”保存就可以了。
大致过程如下图:
最终,最终程序就正常运行了。
测试的代码很简单:
#include <vector>
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("lena.png");
imshow("llena", img);
waitKey();
return 0;
}
【3、感悟】
现在问题解决了,回过头来看,其实问题很简单。但是当时觉得问题莫名其妙,人也非常沮丧。我自己也纠结了好长时间,走了很多弯路。最终,问题还是完美的解决了,还是很高心的。也悟出了一些道理,就像前两天看的一篇博文中说的那样”最优秀的软件工程师是工匠,他们能把能量、独创性和创造力融入到每一行代码中“。编程是一种为了满足兴趣而心甘情愿去做的劳动(Programming is a labor of love),即便再简单不过的问题我也愿意去纠结,直到弄清楚问题的根源!
2015年10月19日 深夜