部署Python程序时遇到问题(与py2exe打包在一起)


问题内容

我有一个问题:我的程序使用py2exe,并且可以在我的计算机上使用。我将它与Inno
Setup打包在一起(仍然可以在我的计算机上使用),但是当我将其发送到另一台计算机时,尝试运行该应用程序时出现以下错误:“
CreateProcess失败;代码14001。”
该应用程序将无法运行。(注意:我在程序中使用wxPython和多处理模块。)我在Google上进行了一些搜索,发现用户应该安装一些MS可再发行的东西,但是我不想让用户的生活变得复杂。有解决方案吗?

版本:

Python 2.6.2c1,py2exe 0.6.9,Windows XP Pro


问题答案:

您需要在安装目录中包含msvcr90.dll,Microsoft.VC90.CRT.manifest和python.exe.manifest(重命名为[yourappname]
.exe.manifest)。如果您使用“ Just for me”选项安装了Python,这些文件将位于系统上的Python26目录中。

有关此操作的说明,请参见此处

不要忘记在主函数中也调用multiprocessing.freeze_support(),否则在启动新进程时会遇到问题。

尽管其他人已经讨论过将MSVC运行时包含在安装包中,但是当您只希望分发包含所有文件的单个.zip文件时,上述解决方案就可以使用。当您不想增加其他复杂性时,它可以避免创建单独的安装程序包。