“程序无法启动,因为您的计算机缺少opencv_world300.dll”C ++中的错误

时间:2015-07-29 21:04:33

标签: c++ opencv visual-studio-2013

我想在Visual Studio 2013中编译一个opencv Console C ++程序。这是我的代码:

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

using namespace cv;
using namespace std;

int main(int argc, const char** argv)
{
    Mat img = imread("rgb_1.png", CV_LOAD_IMAGE_UNCHANGED); //read the image data in the file "MyPic.JPG" and store it in 'img'

    if (img.empty()) //check whether the image is loaded or not
    {
        cout << "Error : Image cannot be loaded..!!" << endl;
        //system("pause"); //wait for a key press
        return -1;
    }

    namedWindow("MyWindow", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow"
    imshow("MyWindow", img); //display the image which is stored in the 'img' in the "MyWindow" window

    waitKey(0); //wait infinite time for a keypress

    destroyWindow("MyWindow"); //destroy the window with the name, "MyWindow"

    return 0;
}

虽然我已在Computer和Visual Studio目录中定义了属性中的所有目录,但我收到"The program can't start because opencv_world300.dll is missing from your computer."错误。

如何解决此问题?

由于

10 个答案:

答案 0 :(得分:16)

在Windows下,您可以从以下位置复制:

<your install directory>\opencv30\build\x64\vc12\bin

并将其放入Visual Studio解决方案中(我假设您使用的是 x64 / Release 配置):

<your solution directory>\x64\Release

或者您可以将上述OpenCV添加到PATH环境变量

答案 1 :(得分:10)

我遇到了同样的问题。

我在版本320上。设置完所有环境变量后,请确保Additional Include DirectoriesAdditional Library DirectoriesAdditional Dependencies都正确无误。对我来说,他们分别是$(OPENCV_BUILD)\include;$(OPENCV_BUILD)\x64\vc14\lib;opencv_world320d.lib;

我的OPENCV_BUILD路径变量C:\opencv320\build将环境变量设置为%OPENCV_BUILD%\x64\vc14\bin (.dll文件所在的位置)。要访问Additional项内容,请右键单击您的项目/解决方案,然后为第一个选择properties -> C/C++,为其他两个选择properties -> Linker -> GeneralInput

重新启动Visual Studio ,如果所有内容都已正确实施,那么您应该能够运行该程序,它应该启动。

修改

根据您的使用情况,我必须在x86下拉列表中将x64切换为Solution Platforms

答案 2 :(得分:5)

您可以检查系统变量以确认opencv_world300.dll所在的目录(可能C:\opencv\build\x64\vc12\bin)。

如果它存在但问题仍然没有解决,请尝试将目录中的所有.dll文件放到C:\WINDOWS\system32

答案 3 :(得分:4)

如果这个问题仍然存在,我就想办法了。

我认为您使用OpenCV网站上的教程来设置OpenCV。运行命令提示符并执行命令后,它会为OpenCV创建环境变量,但不会将其添加到路径中。所以,如果你去路径并在vc12中添加bin的位置(对我来说是vc14),保存它,然后重新启动visual studio,它就可以了。

答案 4 :(得分:3)

最佳和简单的解决方案是

  1. 在环境系统变量中添加OpenCV / build / x64 / bin的path_variable。

  2. 然后重新启动Visual Studio。

这肯定会解决问题。

问题可能是您在打开Visual Studio之后更新了路径变量,因此它无法更新* .dll文件。

答案 5 :(得分:1)

我使用版本320时遇到了完全相同的问题。 在我的情况下,我的&#34; Comodo Internet Security&#34;阻止了应用程序本身和OpenCV的一些事情。一定要把它们全部放在&#34;信任的&#34;在防火墙中右击它们列表。

答案 6 :(得分:1)

我知道这是一篇旧帖子,但我注意到我的libbin之间存在区别问题,因此我将两者都添加到PATH变量中并且有效。

答案 7 :(得分:1)

these instructions之后安装用于VS 2017的OpenCV版本3.4.1之后,Visual Studio抱怨缺少opencv_world341d.dll。即使我已将C:\opencv\build\x64\vc15\bin添加到Windows PATH,但Visual Studio仍然找不到它,因为当我修改PATH时VS已打开。重新启动Visual Studio解决了该问题。

答案 8 :(得分:1)

按照大家所说的添加路径,并记住重新启动Visual Studio。  我添加了所有路径,甚至尝试将所有 opencv_world.dll 复制到与源文件相同的文件夹中,我要做的就是在添加所有路径后重新启动Visual Studio。 / p>

答案 9 :(得分:1)

在Visual Studio 2019中, 尝试这个 在项目的应用程序exe文件所在的项目的调试目录中添加缺少的文件opencv_world430.dll或opencv_worldd.dll。 将丢失的文件复制并粘贴到调试文件夹中

C:\ Users \ myname \ source \ repos \ myopencv \ x64 \ Debug +在此处添加丢失的文件

我的问题在Microsoft Visual Studio 2019中得到了解决:)