Py2Exe:DLL加载失败

Niv*_*Niv 18 python py2exe

当我尝试使用py2exe将我制作的简单Python游戏转换为exe格式时,它给了我以下错误:

Traceback (most recent call last):
  File "C:\Users\Tali\Desktop\2exe.py", line 4, in <module>
    setup(console=['test.py'])
  File "C:\Python\lib\distutils\core.py", line 152, in setup
    dist.run_commands()
  File "C:\Python\lib\distutils\dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "C:\Python\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 243, in run
    self._run()
  File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 305, in _run
    dlls = self.find_dlls(extensions)
  File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 389, in find_dlls

    self.dll_excludes)
  File "C:\Python\lib\site-packages\py2exe\build_exe.py", line 1021, in find_dep
endend_dlls
    import py2exe_util
ImportError: DLL load failed: %1 is not a valid Win32 application.
Run Code Online (Sandbox Code Playgroud)

我在网上搜索了大约一个小时,尝试在我的程序中更改内容.什么都行不通.虽然我的程序使用"随机"库,但我没有看到它引起这种问题的情况.

安装脚本:

from distutils.core import setup
import py2exe

setup(console=['test.py'])
Run Code Online (Sandbox Code Playgroud)

是的,两个脚本都在同一个文件夹(桌面)中.如果重要的话,我在使用Python 2.7的Windows Vista上运行

非常感谢大家.

小智 33

我遇到了同样的问题.

由于我有Windows 7 64bit,我下载了py2exe-0.6.9.win64-py2.6.amd64.exe,我想它是py2exe的64位版本.但它没有用,我也有同样的错误.

我改为py2exe-0.6.9.win32-py2.6.exe,它工作正常.

我想你必须匹配32位或64位与python安装而不是Windows本身.

顺便说一句,"setup.py py2exe"或"python setup.py py2exe"真的没关系,如果你指示windows在python安装过程中用python打开*.py.


ins*_*get 0

从您的评论中,我看到您正在命令提示符中执行此操作:

setup.py py2exe 
Run Code Online (Sandbox Code Playgroud)

py2exe 教程第三步开始,您应该这样做(在命令 promt 中):

python setup.py py2exe
Run Code Online (Sandbox Code Playgroud)

再看一下原问题的评论,发现这个建议已经提出了。为此向华金+1。

尝试再次回答您的问题:Joaquin 还提到这可能是路径问题。您可能想考虑将 python 文件复制到 C:\Python 中,而不是尝试解决这个问题。然后在命令提示符下:

cd C:\Python
python setup.py py2exe
Run Code Online (Sandbox Code Playgroud)

这一直对我有用

希望这可以帮助