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

时间:2013-08-07 09:54:37

标签: c++ visual-studio

Windows 7 x64; Visual Studio 2005-2012;

首先在我的计算机上安装了Visual Studio 2012。但现在我也需要2005年,2008年和2010年。我卸载了2012版本(针对避免的问题)并按升序安装(使用他们的SP):2005年,2008年,2010年,2012年。

我在VS 2008中编写了测试项目,并尝试编译它(Debug | x64配置),但我在"错误列表"窗口:

  

错误结果1从' C:\ Windows \ system32 \ cmd.exe'返回。

但我看到exe文件已创建...如果我尝试运行它,我会收到一条错误消息:

  

程序无法启动,因为您的计算机缺少MSVCP90D.dll。尝试重新安装该程序以解决此问题。

MSVCP90D.dll 文件实际上存在于" C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ redist \ Debug_NonRedist \ x86 \ Microsoft.VC90中.DebugCRT"和" C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ redist \ Debug_NonRedist \ amd64 \ Microsoft.VC90.DebugCRT"目录。

好的,我改变了项目的属性。我设置了" 多线程调试(/ MTd)"值而不是" 多线程调试DLL(/ MDd)"对于" C / C ++ - >代码生成 - >运行时库"属性。

但是我在"错误列表"中得到了同样的错误。窗口呢。我看到exe文件又被创建了...... 如果我尝试运行这个exe文件,我看到现在一切正常

为什么我仍然会在"错误列表中出现错误"?为什么我需要更改该属性?我该如何解决这个问题(错误信息)?

1 个答案:

答案 0 :(得分:1)

有几个Google的答案可以查询“从'C:\ Windows \ system32 \ cmd.exe''返回的错误结果1”。其中第一个(http://social.msdn.microsoft.com/Forums/vstudio/en-US/871103ca-6015-40ce-8a59-92e47ce68aeb/error-prj0002-error-result-1-returned-from-cwindowssystem32cmdexe)表示您可以禁用控制台的AutoRun功能。如果您在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor注册表项中有自动运行值,则将其重命名为其他内容,并查看错误是否已消失。

显然,如果AutoRun注册表值中有COLOR命令,则会出现错误,但如果AutoRun值没有COLOR命令,则没有错误。因此,您可以在注册表中使用AutoRun值,只需从中删除COLOR命令即可解决问题。

也许这个错误与其他错误无关(“丢失”MSVCP90D.dll),但让我们一次修复一件事。