opencv用c++在vs2010上使用出现的一些问题和解决方法(imread加载不出图片)

“opencvtest.exe”: 已加载“C:\Windows\SysWOW64\opencv_core2411d.dll”,Cannot find or open the PDB file
“opencvtest.exe”: 已加载“C:\Windows\SysWOW64\opencv_highgui2411d.dll”,Cannot find or open the PDB file
出现如上问题可能是环境配置的问题:
1.项目配置属性—>附加包含目录 添加$(OPENCV_DIR)\include;
2.另外通用配置属性和项目配置属性的附加依赖项里面只能有d.dll文件,debug解决方案配置下才能运行。

3.用Ctrl+F5来运行,此时是vs2010运行的,不是Windows运行的。

 

4.如果还是不能运行,选择工具-选项-调试-符号,勾选Microsoft符号服务器,编译调试,会等很久,因为要在网上下载pdb文件,运行一次后,取消勾选符号服务器,把符号服务器里面的(在此目录下缓存符号)路径在打开,把里面的文件保存在别的地方。或者不用保存,反正不要把那个缓存删了。就可以运行了。
 
另外,如果imread图片不能加载出来,注意几个地方,一个是图片的格式是否对应,二个是路径写绝对路径,而且不能用"\"符号,只能用"/","//","\\"符号,我是这样填写的,大家可以参考一下。(一下午的血泪史,难道每个遇见这个问题的人都要看遍网上所有办法,废掉一下午,突然OK,才能解决……)我写的是:Mat img=imread("C://Users/lenovo/Desktop/tupian.jpg");

 

 

 

 
能运行出程序不出错,就不用管那个Cannot find or open the PDB file,官方visual studio工作室给了回应:

 

Hello, We apologize if these messages are confusing, but is there any functionality you are expecting that is not available in the debugger? The symbol files (.pdb's) that cannot be found are the symbol files for the Windows system .dll's, and the only reason that you would need these is if you are trying to obtain complete callstacks including the Windows components, or debug into the Windows system API's. If you need the symbols, they are available from the Microsoft Public Symbol servers by checking the "Microsoft Symbol Servers" box under symbol settings (Tools -> Options -> Debugging -> Symbols). 
However, as I mentioned, unless you are unable to debug something in Windows you are expecting to be able to, there is no need to ever load these .pdb files to debug your application, and enabling the symbol servers will slow down your debugging experience since you will be loading more data into the debugging and making a network call to the symbol server (this can be mitigated by enabling a symbol cache on the symbol dialogue).
Best Regards,
Visual Studio Debugger 

 

 

 

 

参考:http://blog.sina.com.cn/s/blog_14ecf9fa60102wu3o.html

 

 

 

你可能感兴趣的:(OpenCV,vs,c++)