【发布时间】:2013-07-27 07:07:50
【问题描述】:
我正在尝试使用 cx_freeze 从 python3 脚本在 Windows 7 上创建一个 .exe。该脚本涉及使用 pywin32 来操作 Excel 文件。我可以从我的 setup.py 文件成功构建 .exe;但是,当我运行 .exe 时,会引发以下错误:
Traceback(最近一次调用最后一次):
文件 "C:\Python33\lib\site-packages\cx_Freeze\initscripts\Console3.py", 第 27 行,在 exec(code,m_dict_)
中文件“MyScript.py”,行 12、在
文件 “C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1558 行,在 _find_and_load
文件“C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1505 行,在 _find_and_load_unlocked
文件“C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 313 行,在 _call_with_frames_removed
文件“C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1558 行,在 _find_and_load
文件“C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1525 行,在 _find_and_load_unlocked
文件“C:\Python33\lib\site-packages\win32com__init__.py”,第 6 行,在
导入pythoncom
文件 “C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1558 行,在 _find_and_load
文件“C:\Python\64-bit\3.3\lib\importlib_bootstrap.py”,第 1525 行,在 _find_and_load_unlocked
文件“C:\Python33\lib\site-packages\pythoncom.py”,第 3 行,在
pywintypes._import_pywin32_system_module_("pythoncom", globals())文件“C:\Python33\lib\site-packages\win32\lib\pywintypes.py”,第 61 行, 在 _import_pywin32_system_module_ 中
raise ImportError("模块 '%s' 不在冻结的 sys.path %s" % (modname, sys.path))
ImportError: Module 'pythoncom' is not in freeze sys.path
['C:\Python33\build\exe.win-amd64\3.3\MyScript.exe',
'C:\Python33\build\exe.win-amd64\3.3',
'C:\Python33\build\exe.win-amd64\3.3\MyScript.zip',
'C:\Python33\build\exe.win-amd64\3.3\library.zip']
这是我的 setup.py 文件当前的样子:
import sys
from cx_Freeze import setup, Executable
base = None
if sys.platform == 'win32':
base = 'Win32GUI'
includes = []
packages = []
executables = [Executable('MyScript.py', base=base)]
include_files = ['MyFolder1/','MyFolder2/Spreadsheet.xls']
setup(name='My Script',
version='0.1',
description='My Script',
executables=executables,
options = {'build_exe': {'includes':includes,
'packages':packages,
'include_msvcr':True,
'include_files':include_files}})
到目前为止,我已经尝试在包含和包列表中同时列出“pythoncom”和“win32com”。非常感谢任何帮助!
【问题讨论】:
标签: python-3.x pywin32 win32com cx-freeze pythoncom