修改setup.py腳本:
from distutils.core import setup
import py2exe
setup(windows=['source_static.py'], options={
"py2exe": {
"excludes": ["OpenGL.GL", "Numeric", "copyreg", "itertools.imap", "numpy", "pkg_resources", "queue", "winreg", "pygame.SRCALPHA", "pygame.sdlmain_osx"],
}
}
)
所以,如果你有類似的問題,只是把那些「失蹤」的模塊到這個「不包括」行。
第2部分:
我成功的可執行文件的製作後,我有一個問題:「應用程序已請求運行時終止它以不同尋常的方式,請聯繫...」。經過幾天和幾天的搜索和思考如何解決這個問題,我找到了一個辦法。我不敢相信這個問題太荒唐了。這個問題在我的代碼,與字體定義:
font1 = pygame.font.SysFont(None, 13)
改變「無」一些系統字體的名稱(一個例子「宋體」(必須是一個字符串)),並編譯之後,我不能不相信我的.exe文件起作用了!
font1 = pygame.font.SysFont("Arial", 13)
當然,您可以使用自己的字體,但必須指定其路徑並在程序中定義它的路徑。
因此,對於所有遇到此問題的人,請嘗試這些步驟,並希望您能成功。 我真的希望這會對你有所幫助,因爲我已經花了幾天和幾周的時間去解決這些問題。我甚至試圖讓我的。exe文件與所有版本的python和pygame,與許多其他的.exe構建器和安裝腳本,但沒有運氣。除了這些問題之外,我還遇到過許多其他問題,但我在stackoverflow.com上找到了答案。
我很高興我找到了一種方法來解決這個問題,並幫助你,如果你面對同樣的問題。
小tips(事我也做):
1:更新您的Microsoft Visual C++庫到最新版本。
第二種:如果您的圖像或字體類似於您的可執行程序需要,請將它們包括到dist文件夾(您的.exe文件已創建的位置)。
第3步:當您製作.exe文件時,將所有需要的文件包含到setup.py腳本所在的文件夾(主腳本使用的所有文件和目錄)中。
使用Python 2.7版的x64,pygame的和py2exe。
我不認爲這是一個重複的問題,但它是非常相似的這一個:http://stackoverflow.com/questions/6646154/fatal-python-error-pygame-parachute我可能會建議你按照鏈接,看看它是否有助於回答你的問題? – hammythepig
我已經嘗試使用該鏈接的pygame版本,它導致我出現相同的錯誤。然而在閱讀本文後,我從頭開始並再次使用pygame版本。這一次它運行良好,沒有任何問題。我不知道我做了什麼不同,但我的問題現在已解決,謝謝! – user1473612
沒有問題!樂於幫助 :) – hammythepig