2011-09-17 50 views
1

我已經搜遍了這個年齡,並嘗試了一切。只是不能讓它工作。Python 2.7(與Tkinter)項目成一個獨立的EXE?

我想要做的就是讓使用Tkinter的,對於Windows我的小程序的一個獨立的exe文件。到目前爲止,我已經完成了使其成爲一個exe文件,但dist/文件夾包括一個文件夾tcl/和一個額外的exe文件。如何擺脫這些?

而且,我一直沒能作的工作exe文件。這裏是我的setup.py

from distutils.core import setup 
import py2exe 
import sys 
if len(sys.argv) == 1: 
    sys.argv.append("py2exe") 

setup(
    options = { 
     "py2exe": {"compressed": 1, "optimize": 2, "ascii": 1, "bundle_files": 1, "includes": ["Tkinter"]} 
     }, 
     zipfile = None, 
     windows = [ 
     { 
      "script": "hello.py", 
      "icon_resources": [(0, "icon_16.ico")] 
     } 
    ] 
) 

有了這個代碼,我得到的通知「該程序停止響應」它運行後立即。

通過移除選項「ASCII」時,程序不工作,留下一個日誌文件:

Traceback (most recent call last): 
    File "hello.py", line 1, in <module> 
    File "zipextimporter.pyo", line 82, in load_module 
    File "Tkinter.pyo", line 38, in <module> 
    File "zipextimporter.pyo", line 82, in load_module 
    File "FixTk.pyo", line 56, in <module> 
    File "FixTk.pyo", line 23, in convert_path 
LookupError: unknown encoding: mbcs 

我關於Python非常樂觀,因爲它似乎非常好的代碼,並找到幫助,但是這是我無法編碼任何東西沒有。任何幫助表示讚賞。我是一個新來的人。

+0

參閱*** [這裏](http://stackoverflow.com/questions/14566531/python-py2exe-window-showing-tkinter#14566647)***回答關於如何捆綁Tkinter的可執行文件與py2exe –

回答

0

我覺得這是與它捆綁Tkinter的方式中的錯誤,你不能優化或蟒蛇捆綁Tkinter的,把這些選項並嘗試運行它。在「TCL」文件夾

+0

我刪除了整個'選項',它運行良好。沒辦法讓它成爲一個獨立的EXE呢? –

0

任何由Tkinter的需要。 Tkinter實際上是鏈接到一個Tcl解釋器(這意味着你可以在Python中運行Tcl命令!)。正因爲如此,您需要Tcl解釋器所需的一切(包括對Tk的支持)。

你得到的錯誤是一個編碼錯誤,並在你的選擇我看到"ascii": 1。擺脫這一點,它應該解決問題。

此外,如果您計劃爲此編譯的程序製作安裝程序,則沒有真正的理由使用"compressed": 1(僅在分發時才需要較小)來壓縮程序。

0

你可以嘗試使用在低於其基本上使用一個安裝方法的位置提供了一種替代的解決方案。我無法在exe中捆綁該tcl文件夾,所以我想這應該是一個更好的解決方案。

http://www.py2exe.org/index.cgi/SingleFileExecutable

相關問題