【发布时间】:2017-05-14 01:13:55
【问题描述】:
我正在尝试使用 cx_Freeze 将我的 pygame python 项目转换为 .exe 文件。安装文件执行正确且没有错误,但问题是当我运行我的 .exe 文件时,控制台窗口将打开和关闭,并且我的游戏窗口不会出现。
我正在使用的 setup.py:
import os
os.environ['TCL_LIBRARY'] = "C:\\Users\\MY_USERNAME\\AppData\\Local\\Programs\\Python\\Python35-32\\tcl\\tcl8.6"
os.environ['TK_LIBRARY'] = "C:\\Users\\MY_USERNAME\\AppData\\Local\\Programs\\Python\\Python35-32\\tcl\\tk8.6"
import cx_Freeze
executables = [cx_Freeze.Executable("main.py")]
cx_Freeze.setup(
name="Shooty",
options={"build_exe": {"packages": ["pygame"], "include_files": ["character.png"]}},
description="Shooty, An epic platformer!",
executables=executables
)
我遇到了 TCL 错误,所以我添加了前三行。然后,一切都应该是正确的。我已经看过类似的帖子,但似乎没有任何帮助。
cx_freeze app opens then closes quickly python program works but .exe does not open cx_Freeze Executable generated with cx_freeze opens for an instant before closing
澄清/TLDR: 我正在使用 cx_Freeze 将 pygame 游戏转换为 .exe 格式。我只有一张名为 character.png 的图像。构建完美执行,没有错误(只要我包含前三行,我有)唯一的问题是:运行 exe 时,控制台打开但不是我的游戏窗口,控制台立即关闭。
【问题讨论】:
-
有人有解决办法吗?
-
尝试从命令行运行可执行文件。这样控制台不会立即关闭,因此如果有任何错误消息,您将能够阅读它们
-
好的,就这么做了。控制台没有输出。
-
您是从 TTF 文件加载字体吗?您也可以尝试将
import pygame._view添加到您的源代码中,如here 所述。我有点怀疑这些中的任何一个都会有所帮助,因为你根本没有得到任何输出,但值得一试。 -
不,反正我跟着帖子也没用
标签: python python-3.x pygame python-3.5 cx-freeze