编辑: Windows 7机器是64位,Windows XP是32位
我使用PyGTK,xlrd,xlwt& xlutils。我已经使用Py2Exe和.exe例外将python脚本转换为.exe并在我的Windows 7笔记本电脑上正常运行。
我的问题:当我将应用程序(及其dll)移植到运行WindowsXP的计算机上时,.exe无法打开。可能是.exe无法正常工作的原因是什么?
MyApp.exe.log错误输出:
C:\ Users \ WindowsXPUser \ MyApp.exe:11:GtkWarning:`C:\ Users \ Windows7User \ Email Contact Manipulation \ dist \ lib \ gtk-2.0 \ 2.10.0 \ engines \ libwimp.dll':% 1不是有效的Win32应用程序。 追溯(最近的呼叫最后):
文件“MyApp.py”,第5行,在中 文件“gtk__init __。pyc”,第40行,中 文件“gtk_gtk.pyc”,第12行,中 文件“gtk_gtk.pyc”,第10行,在__load中 ImportError:DLL加载失败:找不到指定的过程。
相关信息:
您认为.exe在Windows 7计算机上运行良好时,无法在Windows XP计算机上运行的原因是什么?
我的setup.py代码:
# setup.py
from distutils.core import setup
import py2exe, sys, os
sys.argv.append('py2exe')
setup(
name = 'Bounceback Handler',
description = '',
version = '1.0',
windows = [
{
'script': 'MyApp.py'
}
],
options = {
'py2exe': {
'packages':'encodings',
'includes': 'cairo, pango, pangocairo, atk, gobject, gio',
}
},
data_files=None
)
答案 0 :(得分:0)
如果您使用的是Windows 7计算机上安装的64位版本的Python,则会创建64位可执行文件。这不会在32位XP系统上运行。您必须安装32位版本的python然后使用py2exe作为32位版本来创建您的可执行文件。
否则Py2exe会出现这样的奇怪问题。我建议使用PyInstaller