解決 cx_Freeze 做出的 .exe 檔無法在中文路徑下執行的問題

最近因為協助 Lonote 筆記軟體在 Windows 下的打包工作中,因為 Py2exe 至今對這軟體使用的 Python3 不支援,所以採用 cx_Freeze 將用 Python3 寫成的程式和相依的函式庫綁在同一個資料夾中,以方便廣大沒有安裝 Python3 和 PyQt4 的 Windows 用者使用。

但對於中文使用者來說, cx_Freeze 有相當嚴重的缺點,那就是在 setup.py 中,若 cx_Freeze.Executable 之 Base = ‘Win32GUI’(該參數的值為 ‘Win32GUI’ 時),做出來的視窗程式 .exe 檔無法在含有中文名稱的路徑下執行。若嘗試執行,則會跳出 “cannot get zipimporter instance” 的警告視窗。目前的正式版本 4.2.3 仍舊會出現這個錯誤。

談自力解決之兩三

此為 2010-11 間之文章。

2014-02-23 註:修改註腳等微幅調整

縱觀歷史,當遭遇資源不足的窘境時,幾乎所有的人必奮力而出,或摸索前趨、師法前人地找出對應的解決方案。當一地的田產不足供給眾多的人口時,許多人不畏艱辛、遠赴他鄉,找尋生存的一線曙光;當治安敗壞時,鄉人或集結起來,拜師練拳,捍衛自己的田園。此等例子太多太多,若是一一盡寫,恐怕幾本書都不夠寫了。且容筆者將生活中較為熟悉的幾個案例列敘出來,並發表管中之見,或從管中發出幾響砲聲。

霧峰往炎峰的路上--鄉道中108(下)

更新日:2014-12-12

本文分上下兩段,上段請見。中 108 地圖請見,本文介紹藍圖釘(吉峰村)以東的路段。

路拍誌記

第二天(1/24 早晨)

大約早上六時,就自家起身拍攝了。繞到霧峰街上吃早飯時,天未盡光。本是繁華的中正路,商門多閉,幾無營業--除了早餐店以外。 折到上次相機沒電的地方,繼續未盡的中 108 紀錄:

霧峰往炎峰的路上--鄉道中108(上)

(更新於:2014-12-12,修正中108-1的相關內容)

這是我第一篇和公路相關的文章(實驗性質較為濃厚)。因為筆者延誤之因,故照片拍攝日期距此文上半撰寫日期已約半年了。不包含因故停止的文章,這大概是我部落格拖稿最嚴重的作品……(汗顏)。最後,感謝啟發我寫成此文的公路紀行前輩,以及協助我拍攝之人。此外,本文圖多,可能要花一段時間載入,請注意。

概述、地圖

鄉道中108線霧峰市區-桐林(謎之音:特地加粗體,是不是學某知名百科的寫法?)全長5.93公里1, 是聯絡霧峰市區到吉峰、桐林的鄉道,且對桐林村的連外相當重要。其鄉道之走向,大致自霧峰市區出發後,依著東側的丘陵往東北向行進,直到欲過北溝溪,瀕離霧峰之際,他如勒馬般,方向一調,循著這溪,向山中的桐林前去。雖然最後鄉道只走到桐林社區,但其順著分岔的三道支流--北坑溪、中坑溪、南坑溪,分出三條產業道路,往九九峰的方向續行。因此,這是我標題稱為霧峰往炎峰--九九峰--的原因。此外,從桐林分出的北坑產業道路,和其後的竹峰路、峰竹產業道路,(2010/5/9 補上)甚至可以翻過九九峰。但因會經自然保留區,需特殊申請才能進入,請注意