安装 msvcr90.dll 的简单方法! (没有 C++ 可再发行包)

Posted

技术标签:

【中文标题】安装 msvcr90.dll 的简单方法! (没有 C++ 可再发行包)【英文标题】:Installing msvcr90.dll easy way! (without C++ Redistributable Package) 【发布时间】:2009-12-22 03:20:08 【问题描述】:

我的程序是一个将 python 文件转换为 exe 文件的程序。这个exe文件的问题是它没有安装python就无法运行,它只需要mscvr90.dll!我不想只为这个 dll 文件安装 C++ Redistributable Package!那个大胖包!如果我将此 msvcr90.dll 复制到我的应用程序文件夹中,它将无法正常工作!

我安装python时msvcr90.dll的文件路径是:

C:\windows\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375

我真的不知道 python 是如何安装这个文件的,但是必须有一个简单的方法来做到这一点。

有什么想法吗?

【问题讨论】:

【参考方案1】:

VCRT 库并不是一个“大胖子”包。我现在正在查看它们,它们刚刚超过 2mb - 几乎没有。

也就是说,绕过 SxS 链接的唯一真正方法是更改​​链接到文件的可执行文件的清单。您可以使用 Visual Studio 打开 .exe 并编辑清单以不使用 SxS 链接。

【讨论】:

【参考方案2】:

如果使用 /MT 编译,则不会动态链接到 msvcr90 库。

【讨论】:

以上是关于安装 msvcr90.dll 的简单方法! (没有 C++ 可再发行包)的主要内容,如果未能解决你的问题,请参考以下文章

C++ 应用程序(调试版)包含 VS 运行时库 msvcr90.dll 和 msvcr90d.dll

Visual C++ 中的 MSVCR90.dll 分析 [关闭]

vs 2008 部署项目不工作

Python绿色版

如何在另一个 CRT 库中重新路由 std::clog?

有没有Visual Studio 2008 运行时版本的总结?