2012-04-16 67 views
0

我写在C++中使用Visual Studio 2010 程序但是,当我与WinXP的一些计算机上运行它,它说 “无法启动,因为MSVCP100.dll未找到”msvcp100.dll失踪

我如何防止这些依赖不依赖于Windows的DLL?

谢谢。

+0

你是什么意思? – Taru 2012-04-16 21:03:50

+2

项目+属性,C/C++,代码生成,运行时库设置。 – 2012-04-16 21:41:02

回答

1

你不能防止这种依赖,因为它是Visual C++的核心运行库。相反,将Visual C++ 2010可再发行组件包与您的应用程序一起包含(通常单独的链接已足够,因为大多数人已将其安装)

但是,如果实际上您的程序无法启动, MSVCP100D.dll,那么你需要建立你的程序在发布模式,默认情况下,运行时间切换到非调试版本。您需要小心,将您包含在项目中的其他包含静态和动态库放在一起,以确保所有调试或所有发行版本与您的构建相匹配。

如果在查找哪些子项目引用调试版本时遇到困难,可以下载并运行depends.exe并浏览exe文件以查看。

1

对不起,对于后来的响应,但是你可以防止这种依赖性,只需去yopur项目的解决方案属性,进入C/C++>代码生成器,并在运行库中将其从MDd更改为MTd,将包括静态依赖库,而不是运行时,这样可以避免运行时错误,同时尝试运行Dll。