Python程式打包成exe檔案的指南 - 使用PyInstaller打包PySide6應用程式
PySide6 寫的 GUI 程式在自己電腦上跑得好好的,打包成 exe 丟給同事,雙擊就閃退,或是視窗開了但圖示、樣式表全空白。問題幾乎都出在同一個地方:onefile 模式下資源檔的路徑跟開發時不一樣。這篇用一個 Hexo 文章編輯器(HexoEditor)的打包流程當例子,把 PyInstaller 打包 PySide6 會踩到的幾個坑攤開講,重點放在最容易卡住人的 sys._MEIPASS 資源解析。 PyInstaller 在做什麼PyInstaller 會掃描你的程式進入點,分析它 import 了哪些模組,把 Python 直譯器、相依函式庫、你的程式碼全部收進一個 bundle。它有兩種輸出模式: onedir(預設):產生一個資料夾,exe 旁邊放著一堆 .dll、.pyd 和一個 _internal 目錄(把相依集中收進 _internal 是 PyInstaller 6.0 起的配置,舊版是直接散在 exe 旁邊)。 onefile(--onefile / -F):全部壓成單一 exe,啟動時自解壓到暫存目錄再執行。 很多人為了「只給一個檔案比較乾淨」選...




