程序无法启动因为缺少msvcp80.dll

时间:2011-11-21 16:33:38

标签: visual-studio dll

我在visual studio 2010上使用win 7 32bit的机器工作。

我尝试在发布模式下运行在其他计算机上运行良好的代码(win7 64位),并出现以下消息:

The program can't start because msvcp80.dll is missing...

我试着查看处理这个问题的线程。试图安装不同的Redistributable运行时版本。试图将这些文件(msvcp80.dll,msvcm80.dll,msvcr80.dll)复制到项目目录。还有一些不同的东西,我甚至都没有意识到我在做什么。

也许还有其他一些想法?


感谢您的回答。

在我开始项目之前,我确认所有的构建dll都是32位。

我在'opencv'项目上工作并将问题缩小到这个:opencv_imgproc230 lib函数(如cvtColor,GaussianBlur)上发生的唯一问题'是什么原因导致我检查上面的程序(the_mandrill的链接)包括在这个dll。它包括(或者我认为)msvcp100.dll似乎是合理的,因为我在VS10环境中工作。但即使它是msvcp80.dll的尖叫,我想是什么属于VS80。

顺便说一句,当我手动包含(msvcp80.dll,msvcm80.dll,msvcr80.dll)时,它会尖叫:

“R6034应用程序尝试错误地加载c运行时库...”

似乎需要告诉他使用VS10版本(对于这个dll的/运行时库)

4 个答案:

答案 0 :(得分:2)

安装Dependency Walker并以'个人资料'模式运行(f7),这将显示它正在寻找的dll并且无法找到。

答案 1 :(得分:0)

你能检查一下你的dbit是不是32位?也许你有64位版本。

请参阅How can I test a Windows DLL file to determine if it is 32 bit or 64 bit?

答案 2 :(得分:0)

这只是意味着您动态地再次链接MSVC C运行时。 所以你必须安装所谓的redist包。

msvcp80.dll - > VC 8 - > VS 2005

X86 - http://www.microsoft.com/downloads/details.aspx?FamilyId=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en

X64 - http://www.microsoft.com/downloads/details.aspx?FamilyId=90548130-4468-4BBC-9673-D6ACABD5D13B&displaylang=en

通过redisrt软件包安装到中心位置的dll应该可以在安装后解析。

答案 3 :(得分:0)

请参阅this question

您提到您已安装VC8重新发布程序包,但您可能错过了“正确”的程序包。

你可能想要:Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC Security Update