Visual Studio中的C++和OpenCV退出,出现代码-1(0xffffffff)错误



我的代码构建得很好,但当我调试时,我得到的是:

'Proj_OpenCV.exe': Loaded 'C:UsersSaherDocumentsVisual Studio 2008ProjectsProj_OpenCVDebugProj_OpenCV.exe', Symbols loaded.
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64ntdll.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64kernel32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64KernelBase.dll'
'Proj_OpenCV.exe': Loaded 'C:UsersSaherDownloadsOpenCV2.3buildx86vc9binopencv_core230.dll'
'Proj_OpenCV.exe': Loaded 'C:Windowswinsxsx86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57msvcp90.dll'
'Proj_OpenCV.exe': Loaded 'C:Windowswinsxsx86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57msvcr90.dll'
'Proj_OpenCV.exe': Loaded 'C:UsersSaherDownloadsOpenCV2.3buildx86vc9binopencv_highgui230.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64user32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64gdi32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64lpk.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64usp10.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64msvcrt.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64advapi32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64sechost.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64rpcrt4.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64sspicli.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64cryptbase.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64ole32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64oleaut32.dll'
'Proj_OpenCV.exe': Loaded 'C:Windowswinsxsx86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149afcomctl32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64avifil32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64winmm.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64msacm32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64msvfw32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64shell32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64shlwapi.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64avicap32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64version.dll'
'Proj_OpenCV.exe': Loaded 'C:Windowswinsxsx86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_96748342450f6aa2msvcp90d.dll', Symbols loaded.
'Proj_OpenCV.exe': Loaded 'C:Windowswinsxsx86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_96748342450f6aa2msvcr90d.dll', Symbols loaded.
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64imm32.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64msctf.dll'
'Proj_OpenCV.exe': Loaded 'C:WindowsSysWOW64uxtheme.dll'
'Proj_OpenCV.exe': Loaded 'C:Program Files (x86)McAfeeSiteAdvisorsahook.dll'
The program '[5748] Proj_OpenCV.exe: Native' has exited with code -1 (0xffffffff).

我的代码如下所示,来自OpenCV教程页面

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std; 
int main( int argc, char** argv )
{ 

    if( argc != 2) 
    {
     cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
     return -1;
    }
    Mat image;
    image = imread(argv[1], CV_LOAD_IMAGE_COLOR);   // Read the file
    if(! image.data )                              // Check for invalid input
    {
        cout <<  "Could not open or find the image" << std::endl ;
        return -1;
    }
    namedWindow( "Display window", CV_WINDOW_AUTOSIZE );// Create a window for display.
    imshow( "Display window", image );                   // Show our image inside it.
    waitKey(0);                                          // Wait for a keystroke in the window

    return 0;
}

我们将感谢您对这个错误的任何帮助以及如何解决它。

  • 应用程序应该从命令行执行
  • 启动此应用程序时,需要在cmd行中传递图像名称作为参数:display_image.exe test.jpg

或者,如果您是从Visual Studio执行它,请确保将图像文件名设置为:

Project Properties > Configuration Properties > Debugging > Command Arguments

最新更新