wxPython MSVCP90.dll错误

时间:2014-09-12 03:45:37

标签: python wxpython py2exe

我很累...我正在运行python 2.7并使用wxPython创建了一个应用程序。当尝试使用py2app创建和.exe时,我收到以下错误:

error: [Errno 2] No such file or directory: 'MSVCP90.dll'

我已经阅读了很多帖子,说这个文件添加到我的c:\ python27 \ DLLs目录中就可以了。不幸的是,我已经这样做了,错误仍然存​​在。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

我的几分钱:

  • 使用PyInstaller 。优点:wxPython可以毫不费力地工作。积极开发,几乎每个库都有配方AKA钩子文件,即使是硬盘也是如此。缺点:不依赖于distutils / setuptools,所以如果你的(非纯python)库没有配方,你必须自己处理非python依赖(distutils / setuptools配方不起作用)。
  • 对于 py2exe (我想这就是你所说的):你不能简单地复制DLL,你必须使用清单文件。检查this wxPython-wiki entry以了解这一切是什么。此外,您必须自己处理DLL的分发(通过在目标机器上安装Python 2.7,在目标机器上安装可自行分发的运行时或使用Esky之类的帮助程序库,可以对其进行配置包括清单和关心DLL本身的复制)。

答案 1 :(得分:1)

分发MSVCP90.DLL文件是另一个问题。 OP面临的是,在构建exe时,py2exe无法找到MSVCP90.DLL文件。

解决方案是将MSVCR90.DLL放在dll_excludes列表中,方法是更改​​setup.py文件,或者在命令行上传递它,如下所示:

python setup.py py2exe --dll-excludes=MSVCP90.DLL