Pyinstaller:禁用控制台时执行失败

时间:2016-05-20 15:33:13

标签: python python-3.x tkinter pyinstaller

我正在尝试将我的tkinter应用程序打包成单个文件可执行文件。每当我将控制台选项设置为False时,我会遇到一个消息框,指出读取"无法执行脚本xxx"。但是,如果我在.spec中启用控制台窗口,我可以正常运行我的程序。

我在下面添加了我的spec文件。我执行文件:

pyinstaller --onefile -w build.spec

spec文件代码:

# -*- mode: python -*-

block_cipher = None


a = Analysis(['MainPage.py'],
             pathex=['C:\\path-to\\prog'],
             binaries=None,
             datas=None,
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher)
a.datas += [('icon.ico','C:\\path-to\\icon.ico','DATA')]
pyz = PYZ(a.pure)
exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          name='prog.exe',
          debug=False,
          strip=False,
          upx=False,
          console=False , icon='icon.ico')

为什么在更改控制台选项时我的应用程序无法执行?

1 个答案:

答案 0 :(得分:0)

在使用一个在控制台(进度条)中记录一些信息的模块时,我遇到了类似的问题。一旦我禁用所有信息输出到控制台,它就可以正常运行。

您可能想查看使用应用程序时控制台中实际发生的情况,如果打算不使用它而运行,则禁用/删除控制台交互。

p.s。 下次我应该先检查发布日期= P