【问题标题】:MSVCP100D.dll is missing on your computer debug mode Visual C++ 2012您的计算机调试模式 Visual C++ 2012 上缺少 MSVCP100D.dll
【发布时间】:2013-09-23 05:46:13
【问题描述】:

我知道以前有人问过这个问题。但我需要一个真正的答案,一个真正的解释! 在 Visual Studio 2012 Express 中以 发布模式 运行 (ctrl+F5) 下面显示的代码时,一切正常。在调试模式下运行它时,我得到:

程序无法启动,因为您的计算机中缺少 MSVCP100.dll...

我已经安装了 Redistributable Package 2010 和 2012。

这是怎么回事???请详细的解释,我能理解:) 非常感谢!!!

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

using namespace cv;
using namespace std;

int main( int argc, char** argv )
{
    Mat image = imread("Bild.jpg");

    namedWindow("Mein Bild");

    imshow("Mein Bild", image);

    waitKey(5000);

    //The member variable data is in fact a pointer to the allocated memory block that will contain
    //the image data. It is simply set to 0 when no image has been read.
    if(!image.data)
    {
        cout<<"No image has been createt"<<endl;
    }

    cout<<"height = " << image.size().height <<"\t width = "<< image.size().width<<endl;

    //page 27

    return 1;
}

【问题讨论】:

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


    【解决方案1】:

    使用编译器选项更改运行时库对我有用(“配置属性”/“C/C++”/“代码生成”。在标记为运行时库的项目中strong>,发布版本选择Multi Threaded (/MT),调试版本选择Multi Threaded Debug (/MTd))。我确实必须同时进行调试和发布才能使发布工作。不知道为什么。

    注意:我是在 Windows 7 上使用 VC2010 Express 版本进行编译的。我在旧的 XP 机器上进行了测试。另注:MS信息http://msdn.microsoft.com/en-us/library/2kzt1wy3(v=vs.100).aspx

    【讨论】:

    • 您必须同时更改两者,因为默认值为 /MD/MDd
    【解决方案2】:

    按设计。不允许重新分发调试模式可执行文件。顾名思义,它们是用来调试的,不是用来发布的。

    【讨论】:

    • @newandlost:发给抱怨 MSVCP100.dll 的电脑。它是 Visual Studio 安装的一部分,并与 Visual Studio 调试器一起工作。因此,从投诉来看,您正在另一台计算机上运行它。
    • 我没有在另一台计算机上运行它。就像我在上面写的一样,我编写了那段代码并在 Visual Studio 2012 中的调试模式下按 ctr+F5,我收到了这个错误。
    • 嗯,那是 Visual Studio 2012,但是 DLL 来自 VS 2010。那必须在另一台PC上。 (VS2012使用MSVCP110D.dll)
    • 我没用过VS2010。我没有使用其他计算机。
    • @newandlost:这很奇怪。那么是什么导致了对 Visual Studio 2010 调试 DLL 的依赖?
    【解决方案3】:

    我遇到了同样的错误,并尝试了几天在互联网上可以找到的所有解决方案,但我最终设法自己修复了它。

    如果您使用的是 Windows 7,请尝试重新安装操作系统。由于我使用的是 Win 8,我只是 refreshed my computer 并且再也没有收到错误。一旦你的代码工作了,别忘了create a restore point以防万一:)

    请注意,如果您刷新计算机,则必须安装所有程序,但您的所有个人文件仍然存在。

    【讨论】:

      猜你喜欢
      • 2013-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-09
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多