1

在 Visual Studio 2010 Pro 中编译 OpenCV 2.4 后,我为 opencv 编写了一个简单的测试程序,看看它是否正常工作。

程序是这样的:

#include "StdAfx.h"    
#include <opencv2/highgui/highgui.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main()
{
    Mat im = imread("c:/full/path/to/lena.jpg");
    if (im.empty()) 
    {
        cout << "Cannot load image!" << endl;
        return -1;
    }
    imshow("Image", im);
    waitKey(0);
}

问题是程序编译没有问题(我已经在visual studio中设置了所有的lib路径和包含路径),但是当我尝试运行它时,它给了我以下错误消息winow:“程序无法启动因为您的计算机中缺少 opencv_core240d.dll。请尝试重新安装程序以解决此问题”

现在,我读到可以通过执行 cmd 命令将 Windows PATH 变量设置为实际 .dll 文件所在的目录来解决此问题:

SET PATH="C:\Program Files (x86)\OpenCV\opencv\build\bin\Debug"

指定的路径确实是 .dll 文件所在的路径,但是我仍然收到错误消息。

非常感谢您的帮助,因为我花了太多时间来解决这个问题......

4

1 回答 1

4

您必须从设置 PATH 的同一命令行运行程序(当然,在设置路径之后)。

如果你试图从其他地方运行它,你应该设置 PATH 环境。控制面板中的变量 -> 系统优先(*),然后重新启动命令行/IDE 以使新 PATH 生效

(*) 控制面板 -> 系统 -> 高级系统设置 -> Windows 7 上的环境变量

于 2012-06-15T18:30:52.337 回答