尝试使用 pyttsx3 冻结文件时出错 - 未找到模块 sapi5

Error trying to freeze file using pyttsx3 - module sapi5 not found

我已经使用 pyttsx3 和语音识别制作了一个程序 - 当我 运行 它在我的 IDLE python 编辑器上工作正常,但我最近试图将它冻结到一个 .exe 文件(所以我的朋友们可以看到它)并且它出现了一个错误说

ModuleNotFoundError: No module named pyttsx3.drivers.sapi5

我不知道这是怎么回事 - 我假设它在构建时不会自动获取该文件?

这是我的 setup.py:

import sys
from cx_Freeze import setup, Executable

base = None
if sys.platform == 'win32' : base = 'Win32GUI'

opts = { 'include_files' : ['splash.py', 'ohelp.py', 'oink.gif'] , 'includes' : ['re'], 'packages': ['pyttsx3.drivers',
'pyttsx3.drivers.dummy',
'pyttsx3.drivers.espeak',
'pyttsx3.drivers.nsss',
'pyttsx3.drivers.sapi5']}

setup(name = "OinK", version = "1.0", description = "A voice assistant", author = "**********", options = {"build.exe" : opts}, executables = [ Executable("voice.py", base = base)])

然后 运行 在 CMD 中

python setup.py build

除了找不到 pyttsx3.drivers.sapi5

之外,一切正常

已修复 - 一些已编译的文件位于不同的目录中(与模块文件)

不知道为什么,但我将它们复制到其他正确的地方并且有效