【问题标题】:Error using cx_Freeze to turn .py in .exe使用 cx_Freeze 将 .py 转入 .exe 时出错
【发布时间】:2017-10-06 11:37:19
【问题描述】:

我在 python 中有一个程序,我想使用 cx_Freeze 将其转换为 .exe,但它给出了错误,请按照图片操作: Here's the image

这是我的 setup.py 代码

import sys
from cx_Freeze import setup,Executable
import os.path
from tkinter import *


os.environ['TCL_LIBRARY'] = r'C:\Program Files\Python36\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'C:\Program Files\Python36\tcl\tk8.6'

PYTHON_INSTALL_DIR = os.path.dirname(os.path.dirname(os.__file__))
os.environ['TCL_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 
'tcl8.6')
os.environ['TK_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 'tk8.6')

options = {
    'build_exe': {
        'include_files':[
           os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tk86t.dll'),
           os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tcl86t.dll'),
        ],
   },
}

base=None

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

executables=[
   Executable('TABUADATKINTER.py',base=base)
]

buildOptions=dict(
   packages=[],
   includes=['pygame'],
   include_files=[],
   excludes=[]
)

setup(
   name='Tabuada',
   version='1.0',
   description='TABUADA',
   options=dict(build_exe=buildOptions),
   executables=executables
)

如果需要我的程序代码,请告诉我, 请帮帮我,我不知道如何解决这个问题。

【问题讨论】:

    标签: python-3.x tkinter cx-freeze


    【解决方案1】:

    试试这个:

    from cx_Freeze import setup,Executable
    import os.path
    from tkinter import *
    
    
    PYTHON_INSTALL_DIR = os.path.dirname(os.path.dirname(os.__file__))
    os.environ['TCL_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 'tcl8.6')
    os.environ['TK_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 'tk8.6')
    
    packages = ["pygame"]
    
    options = {
        'build_exe': {
            'include_files':[
               os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tk86t.dll'),
               os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tcl86t.dll'),
            ],
    
            'packages':packages,
       },
    }
    
    base=None
    
    if sys.platform=='win32':
       base='Win32GUI'
    
    executables=[Executable('TABUADATKINTER.py',base=base)]
    
    setup(
        name = 'Tabuada',
        options = options,
        version = "1.0",
        description = 'TABUADA',
        executables = executables
    )
    

    【讨论】:

    • 我试过这个,我在控制台构建了程序,可执行文件是在一个充满档案的文件夹中生成的,当我点击它并给我以下错误:link
    • 好消息意味着你已经走得更远了,因为之前它在第 1 行出错,现在是第 11 行。你能分享你的代码的那部分吗?
    • 我做到了!!问题出在更改表单图标的命令上,命令是win.iconbitmap('cubic.ico'),我从代码中删除了这个,然后运行命令在控制台中构建程序,它工作正常,现在我将使用另一个程序换个图标,谢谢帮助!!
    • 很高兴听到:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-14
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多