問題的答案是我在其他的答案。確保你首先閱讀它,因爲這個擴展了它。
好的,所以經過幾個小時的痛苦之後,我的遊戲在沒有安裝Python的人的電腦上運行.exe,這是我的目標!如果有人需要知道,我使用Pygame來製作遊戲。
所以,這裏不久我在其他答案我給的步驟之後,所做的:
這是我使用的setup.py:
from cx_Freeze import setup, Executable
includefiles = ['add_all_your_files_here, example.png, example.mp3']
includes = []
excludes = []
packages = []
setup(
name = 'yourgame',
version = '1.0.0',
description = '',
author = 'John Doe',
author_email = '[email protected]',
options = {'build_exe': {'excludes':excludes,'packages':packages,'include_files':includefiles}},
executables = [Executable('yourgame.py')]
)
注意,我想不出(和不想打擾)如何包含來自其他文件夾的文件,所以我把它們放在了setup.py所在的位置。我試圖把相對路徑,但似乎我應該把絕對。
要注意哪些文件丟失我不得不從cmd運行該exe文件,以便它會崩潰時我可以讀取錯誤。當我從Windows打開.exe時,這是不可能的,因爲窗口會關閉得太快。
除了我的代碼需要的文件之外,它還想要其他一些.py文件。即:
re.py
sre_compile.py
sre_constants.py
sre_parse.py
我將它們從python(c:\ Python33 \ Lib)複製到我的遊戲文件夾中。
這個.exe然後能夠在我的和另一臺沒有安裝python的計算機上運行我的遊戲而沒有問題(例如沒有字體問題,正如我聽到有人所說的那樣)。
我花了9個小時在兩天內弄清楚這一切。希望它可以幫助其他初學者。
如果您告訴它使用Win32GUI庫,可以很快解決控制檯關閉的問題 - 請參閱示例[here](http://cx_freeze.readthedocs.org/en/latest/distutils.html) 。 –
對re&sre文件的需求是cx_Freeze中的一個錯誤 - 它應該在下一個版本中修復。對你的問題堅持不懈! –
啊,已經很晚了,但是感謝那些信息! –