Windows XP 中的 Python Cx_Freeze 错误

Posted

技术标签:

【中文标题】Windows XP 中的 Python Cx_Freeze 错误【英文标题】:Python Cx_Freeze error in Windows XP 【发布时间】:2013-05-29 03:04:54 【问题描述】:

我在我的 Windows 7 中多次使用 cx_freeze,我从来没有遇到过任何问题,但现在我想在 Windows XP 中运行由 cx_freeze 生成的可执行文件。 但是当我运行程序时,我得到了这个错误:

the application configuration is incorrect. Reinstalling this application may fix this problem

我已搜索过有关此问题的信息,似乎未安装 Microsoft Visual Studio 2008 可再发行组件。我将在许多计算机上启动这个可执行文件,所以我不想在系统中安装任何东西。 我已经读到我可以将这 4 个文件放在与我的二进制文件相同的文件夹中: 此目录中的那 3 个

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

msvcm90.dll msvcp90.dll msvcr90.dll

还有这个目录下的这个文件

C:\WINDOWS\WinSxS\Manifests

x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375.manifest

我已经在我的系统(Win 8)中搜索了这个目录,但它们并不在这个文件夹中。无论如何,我从互联网上下载了它们并尝试了它,但它没有用 我有 Python 2.7 和 cx_Freeze-4.3.1

我已经读过,如果我使用较低版本的 pyython,它可以工作。是真的?为什么?

你知道我可以在不安装任何系统的情况下解决它吗? 非常感谢您的帮助。

【问题讨论】:

也许您可以使用免费的Portable Python 来运行您的脚本,而不是 cx_freeze。目前有 Python 2.7 版本。 感谢您的回复,但我需要使用通过 cx_freeze 获得的可执行文件。还有其他想法吗? 嗯,另一个常用的工具是py2exe。但是,它也需要 msvcr90 C 运行时 DLL,同样,如果您没有它,则需要单独安装它。见Bundling the C runtime DLL。 最新版本的 cx_Freeze 有一个 include_msvcr 选项 (docs),您可以试试。 【参考方案1】:

感谢大家的帮助。我终于让它使用不同的解决方案。

我发现我系统中的其他程序也有这个 dll。 Eclipese 就是其中之一(在这条道路上:

eclipse\plugins\com.intland.hgbinary.win32_2.3.2\os\win32

) 所以我就拿了:

Microsoft.VC90.CRT.manifest

msvcm90.dll

msvcp90.dll

msvcr90.dll

这个文件并将它们复制并粘贴到我编译的python代码的文件夹中。它就像魔术一样工作。

还是谢谢你的帮助!! :D

【讨论】:

你的经验可能对我有帮助。

以上是关于Windows XP 中的 Python Cx_Freeze 错误的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式启用/禁用网络接口? (Windows XP)

哪些版本的 Python 可以在 Windows XP 中运行?

我在 python3.7/Windows 7 中编写的 Python 程序无法在 Windows XP 中运行

windows XP上实现python2.7.5和python3.4.3共存

Windows XP、Python 2.7 和 Pygame

无法在 Windows XP Professional 中安装 Python 3.5