c++可执行文件- MSVCR100.dll未找到错误

C++ executable - MSVCR100.dll not found error

本文关键字:错误 dll 可执行文件 MSVCR100 c++      更新时间:2023-10-16

我已经下载并编译了一个开源c++应用程序Frhed。

当我运行我编译的版本时,它需要MSVCR100和其他一些dll文件(Visual c++可重新分发的一部分)。然而,当我运行原始的预编译的Frhed可执行文件时,它运行时没有安装任何可重新发布的c++包。

我是否必须修改任何编译选项,以便从c++可重新发布的库中解除程序的链接?

原始程序可能是静态链接的,而您正在尝试动态链接您的可执行文件,这会导致更小的文件,但依赖于MSVCR100.dll (Microsoft C Runtime Library的v10)中的函数,如果您是静态链接,则该函数将包含在可执行文件中。

要静态链接dll,进入项目属性并将构建模式从MD更改为MT。在Visual Studio 2010/2012中,该项目属性为C/c++ ->代码生成->运行时库。

简短的答案是,较长的答案是,嗯,较长。

msvcr100.dll10.0版本(即Visual Studio 2010版本)的C运行时的DLL实现,您可能通过使用/MD编译选项请求。要避免使用运行时的动态链接版本,您可以使用/MT选项,并静态链接运行时。

或者,您可以将msvcr100.dll(和其他文件)与程序一起重新分发。

相关文章: