System XP和Win 7 python 2.6和2.7
我使用'bundle_files'创建了我的.exe所以我只有一个文件,没有.dll,它在我的计算机上运行,然后去了一个新的w / out python或vs distributables - 不起作用。得到一个错误“系统无法执行指定的程序”有些环顾四周并想通了我需要可分发的 - 安装好并且工作正常 - 但我想编译w / budle_files:1选项所以我只有一个。 exe文件 使用.dll而不必在我的计算机和朋友身上使用distibutable。 (我知道你不能捆绑这个.dll)
我使用了py2exe指南中提供的示例,但.dll文件和.manifest文件不在它显示的位置,所以我只是将它们复制到另一个更容易的位置。它编译并包含“Microsoft.VC90.CRT”子文件夹,但是当我删除python和distributables时,我仍然会收到错误。这是我的剧本。
from distutils.core import setup
from glob import glob
import os
import sys
import platform
import py2exe
data_files = [("Microsoft.VC90.CRT", glob(r'C:\Documents and Settings\User\Desktop\Temp\dlls\*.*'))]
setup(console=['Script.py'],
data_files=data_files,
options = {'py2exe':{'bundle_files':1}},
zipfile= None,
)
由于
答案 0 :(得分:1)
从未得到答案,只是放弃了一个py2exe。
找到pyinstaller。哪个能比我用py2exe做得更好。而不是我的一个.exe文件和额外的.dll目录。它只能生成一个.exe文件,并且能够在没有python或可再发行组件的系统上运行。
将脚本作为pyinstaller.py脚本放在目录中。
cmd > location of scripts
pyinstaller.py --onefile <yourscript>