使用py2x的windows中的pyttsx编译错误

2024-05-06 07:13:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我用pyttsx库编写了一个python应用程序。它的工作没有任何问题tt.py公司文件。我编的这个tt.py公司使用py2exe模块的文件。编译后,我试图运行.exe文件。然后它会像给定的图像一样显示错误 enter image description here

我的 设置.py像这样的文件

from distutils.core import setup
import py2exe, sys, os
#includes =['drivers','drivers.sapi5'] #this tried. but making error 
sys.argv.append('py2exe')

setup(
    options = {'py2exe': {}},
    console=['tt.py'],

)

我用这个命令编译的

^{pr2}$

我正在tt.py公司

import pyttsx
import pyttsx.drivers.sapi5
import win32com
from time import sleep

我该怎么解决这个问题?在


Tags: 模块文件frompyimport应用程序syssetup
2条回答

我尝试了几分钟的cxu冻结,但当它没有立即成功时,我尝试了更多的py2exe,并得到了这个工作:

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=['tt.py'], options = {'py2exe': py2exe_options})

请注意,这需要您在两台机器上运行相同的版本(在我的例子中是v5.4)。如果你想避开这个问题,你可能需要尝试一下more advanced。在

查看您的导入,您需要添加import time

如果你的问题是使用cx-freeze,就像py-to-exe一样,使用这样的代码。在

升级到python3.3可能也是个好主意。这可能会解决一些问题。在

这可能有助于它是一篇关于你的错误的文章。https://mail.python.org/pipermail/python-win32/2006-January/004184.html

import pyttsx
import pyttsx.drivers.sapi5
import win32com
from time import sleep
import sys
from cx_Freeze import setup, Executable

setup(
    name = "tt.py",
    version = "0.1",
    description = "your discription",
    executables = [Executable("The file name", base = "Win32GUI")])

以下是指向cx freezehttp://cx-freeze.sourceforge.net/的链接

下面是关于如何使用它的教程http://cx-freeze.readthedocs.org/en/latest/overview.html

相关问题 更多 >