我最近升级到并在发布模式下编译时执行这段小代码时OpenCV 2.4.9
遇到了:Buffer Overrun
std::string calibSettingFilename( "config.xml" );
cv::FileStorage fs( calibSettingFilename, FileStorage::READ );
在调试模式下一切正常,所以我完全不知道在哪里寻找解决方案。如果这有帮助,我的调用堆栈如下所示:
msvcr110.dll!_crt_debugger_hook(int _Reserved) Line 60 C
CameraCalibration.exe!__raise_securityfailure(_EXCEPTION_POINTERS * ExceptionPointers) Line 70 C
CameraCalibration.exe!__report_gsfailure() Line 235 C
CameraCalibration.exe!_memcpy() C++
ntdll.dll!ExecuteHandler@20() Unknown
ntdll.dll!_RtlDispatchException@8() Unknown
ntdll.dll!_KiUserExceptionDispatcher@8() Unknown
opencv_core249d.dll!cvOpenFileStorage(const char * filename, CvMemStorage * dststorage, int flags, const char * encoding) Line 2694 C++
opencv_core249d.dll!cv::FileStorage::open(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, int flags, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & encoding) Line 5177 C++
opencv_core249d.dll!cv::FileStorage::FileStorage(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, int flags, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & encoding) Line 5156 C++
CameraCalibration.exe!ReadCalibrationSettings(CalibrationSettings * * settings) Line 28 C++