程序包含py2exe和msvcr90.dll请不要帮忙

时间:2012-10-29 12:13:38

标签: python visual-studio py2exe redistributable msvcr90.dll

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,
    ) 

由于

1 个答案:

答案 0 :(得分:1)

从未得到答案,只是放弃了一个py2exe。

找到pyinstaller。哪个能比我用py2exe做得更好。而不是我的一个.exe文件和额外的.dll目录。它只能生成一个.exe文件,并且能够在没有python或可再发行组件的系统上运行。

将脚本作为pyinstaller.py脚本放在目录中。

cmd > location of scripts

pyinstaller.py --onefile <yourscript>