Py2Exe错误:运行生成的可执行文件时Win32com.client导致错误
我正在尝试把一个脚本做成可执行文件,这个脚本里包含了以下的导入:
import csv, time, BeautifulSoup, sys, mechanize, os, traceback, win32com.client as win32
我的setup.py文件看起来是这样的:
from distutils.core import setup
import py2exe, sys, os
sys.argv.append('py2exe')
setup(
options = {'py2exe': {'bundle_files': 1}},
console = [{'script': "tool.py"}],
zipfile = None,
)
我的程序的.exe文件成功创建了,但是当我尝试运行它时,出现了以下错误:
Traceback (most recent call last):
File "tool.py", line 1, in <module>
File "zipextimporter.pyc", line 82, in load_module
File "win32com\__init__.pyc", line 5, in <module>
File "zipextimporter.pyc", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading win32api.pyd
奇怪的是,如果我使用 bundle_files: = 3
,它可以顺利编译成.exe文件,但我希望这个程序能打包成一个可执行文件,而不是多个文件。我在py2exe网站上看过这个,但我不确定这是否是我需要做的。如果这是我想要的解决方案,我不知道该怎么用或者该怎么处理。请帮我解释一下。
非常感谢任何帮助!
1 个回答
0
这个问题通过升级到Python 2.7解决了。我最开始安装的是Python 2.6,但更新后问题就解决了。