Skip to content
This repository was archived by the owner on Aug 18, 2025. It is now read-only.

PyInstaller-GUI-Windows-Enhance v0.0.0.2

Choose a tag to compare

@HoneyWhiteCloud HoneyWhiteCloud released this 14 Aug 10:41
· 4 commits to main since this release
8ad3dad

概述
本版聚焦於「體驗一致」「可本地化的懸停提示」與「構建產物的體積與相容性」三個方向:在不改變原有介面佈局與控制項位置的前提下,新增完整 Tooltip(僅顯示一種語言)、完善 Windows 高 DPI 感知,並將 UPX 調整為構建後處理以降低風險與提升可控性.


亮點

  • 新增:全量懸停提示(i18n) —— 自動偵測系統語言,僅顯示單一語言(目前含 zh_CN/zh_TW/en_US,可擴充).所有主要控制項提供「精簡說明+小範例」

  • 例如:

  • 執行時臨時目錄(--runtime-tmpdir):例 %TEMP%\myapp、D:\tmp\myapp

  • 額外命令列參數:例 --collect-all pkg --paths C:\py\libs(註:--add-data 在 Windows 用 src;dest,Linux/macOS 用 src:dest)

  • 新增:高 DPI 感知(Windows) —— 啟動前啟用 Per-Monitor V2,建立 Tk 後同步 tk scaling,避免縮放造成控件尺寸跳變

  • 優化:UPX 改為構建後處理 —— 構建命令固定加 --noupx,構建成功後再對可執行檔與動態庫套用 UPX(等級 1~10,10 視為 9)

  • 保留原滑桿樣式(無刻度 ttk.Scale)+右側數字顯示等級

  • 自動偵測/嘗試安裝 UPX;支援排除清單(如 .dll、_debug.pyd)

  • 相容性:依 PyInstaller 版本條件顯示 WinSxS 選項 —— 僅在版本 < 6.0 時顯示(v6+已移除)

  • 體驗:不改佈局、不減控件 —— 保留原有排列與數量;深色日誌面板;「開始構建/清理臨時文件/退出」按鈕齊備


新增

  • 懸停提示鍵值全面補齊(以 tip_* 命名),集中於 zh_CN.py/zh_TW.py/en_US.py
  • 「執行時臨時目錄」「額外命令列參數」兩處新增精簡說明+範例
  • 構建成功後自動嘗試開啟輸出目錄(可視系統而定)

優化

  • 「附加資源」統一入口與語法:支援 來源|目標 或 來源=>目標(例:assets|assets、C:\img\logo.png|images\logo.png)
  • 日誌頁面上的輸出與滾動行為更加平順
  • 介面尺寸與最小化限制調整,視窗尺寸更貼近高解析螢幕

修復

  • 修正:初始化順序導致的 tk 變量錯誤(Too early to create variable)
  • 修正:高 DPI 下可能出現的控件縮放不一致問題

相容性與注意事項

  • PyInstaller 6+:WinSxS 相關旗標已被移除;本工具僅在版本 < 6.0 時顯示對應選項
  • UPX:首次使用可能自動安裝;如預設源不可用,會嘗試替代鏡像;失敗時將跳過並在日誌提示
  • 附加資源映射:請確認目標相對路徑正確;對於大型資料夾,建議先在本地驗證打包結果

升級指引

1.建議先執行「清理臨時文件」以刪除 build/、同名 .spec、pycache
2.重新選擇主腳本並校驗輸出名稱與目錄
3.如需 UPX,設定滑桿等級並視專案情況新增排除模式
4.驗證多語言提示:切換系統語言或替換對應語言檔,重新啟動檢查


已知問題

  • 某些安全或受限環境可能阻止自動安裝 UPX;此時會跳過壓縮(功能不影響)
  • 非 Windows 平台僅部分高 DPI 行為可用(依 Tk 版本)

版本標註

  • 請將「vX.Y.Z」替換為實際版本號並附上日期(YYYY-MM-DD)

--
(提示:本文為全角轉義版,為避免網頁 Markdown 渲染;請在本地使用 decode_fullwidth.py 還原為半角 Markdown。)