如何组合这两个py2exe程序。它们是pygame2exe和pyttsx.exe

时间:2014-11-13 17:12:39

标签: python pygame py2exe

对不起,如果我以一种有趣的方式提出这个问题,但我不知道一个更好的方式来说出来。我试图将其结合起来。

http://www.pygame.org/wiki/Pygame2exe?parent=CookBook

有了这个。

from distutils.core import setup
import py2exe

py2exe_options = { 'includes': ['pyttsx.drivers.sapi5', 'win32com.gen_py.C866CA3A-32F7-11D2-9602-     00C04F8EE628x0x5x4'],
               'typelibs': [('{C866CA3A-32F7-11D2-9602-00C04F8EE628}', 0, 5, 4)] }

setup(console=['main.py'], options = {'py2exe': py2exe_options})

如果有人能提供帮助我真的很感激。我试过的一切都给出了错误。 谢谢朋友们。

1 个答案:

答案 0 :(得分:0)

使用您链接的pygame2exe脚本,您需要将额外包含列表['pyttsx.drivers.sapi5', 'win32com.gen_py.C866CA3A-32F7-11D2-9602-00C04F8EE628x0x5x4']添加到所使用的设置选项中 - 看起来您可以通过覆盖或更改self.extra_scripts = [] BuildExe来实现这一点1}}。然后你还需要对你的typelibs做类似的事情,认为它看起来像pygame2exe不直接支持。

您最容易做的事情可能是获取pygame2exe的本地副本,然后修改BuildExe类以将特定选项添加到此:

自:

options = {'py2exe': {'optimize': 2, 'bundle_files': 1, 'compressed': True, \
    'excludes': self.exclude_modules, 'packages': self.extra_modules, \
    'dll_excludes': self.exclude_dll,
    'includes': self.extra_scripts} },

To(这可能需要进一步调整:

options = {'py2exe': {'optimize': 2, 'bundle_files': 1, 'compressed': True, \
    'excludes': self.exclude_modules, 'packages': self.extra_modules, \
    'dll_excludes': self.exclude_dll,
    'includes': self.extra_scripts + ['pyttsx.drivers.sapi5', 'win32com.gen_py.C866CA3A-32F7-11D2-9602-00C04F8EE628x0x5x4'],
    'typelibs': [('{C866CA3A-32F7-11D2-9602-00C04F8EE628}', 0, 5, 4)]
}},

让我知道你是怎么过的!