You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyInstaller打包pyttsx3项目报pythoncom模块缺失错误求助

PyInstaller打包pyttsx3项目pythoncom缺失报错解决方案

该报错是因为PyInstaller打包时无法完整采集pywin32库的pythoncom相关依赖资源,仅添加隐藏导入参数无法覆盖全部依赖,可按以下优先级尝试解决方案:

  • 第一步先升级对应依赖库,排除版本兼容问题,执行命令:
    pip install --upgrade pyinstaller pywin32
  • 方案1:使用全量采集pywin32资源的打包命令,直接替换原有打包命令即可:
    pyinstaller .\SCREENER.PY --hidden-import pyttsx3.drivers.sapi5 --hidden-import babel.numbers --collect-all pywin32
  • 方案2:若方案1仍报错,手动补全依赖动态库:
    1. 打开当前使用的Python环境安装目录,进入Lib/site-packages/pywin32_system32路径
    2. 找到目录下的pythoncom3XX.dll和pywintypes3XX.dll文件(XX对应Python主版本号,例如Python3.10对应310)
    3. 将这两个dll文件复制到打包生成的dist/SCREENER文件夹内,和exe文件放在同一目录
  • 方案3:若上述方案均不生效,改用spec配置文件打包,兼容性更强:
    1. 先执行命令生成spec配置文件:pyi-makespec .\SCREENER.PY
    2. 打开生成的SCREENER.spec文件,找到hiddenimports配置项,修改为:
      hiddenimports=['pyttsx3.drivers.sapi5', 'babel.numbers', 'pythoncom', 'win32com', 'win32com.client']
    3. 保存spec文件后,执行命令用spec文件打包:pyinstaller SCREENER.spec
  • 额外适配优化:可在SCREENER.py代码最开头加入两行代码,提前初始化pythoncom避免运行时加载失败:
import pythoncom
pythoncom.CoInitialize()

内容的提问来源于stack exchange,提问作者Aryan Gupta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 01:06:03