C++Builder 初學者最常遇到的問題:開發機上編譯完美,複製 .exe 到無安裝 BCB 的電腦卻彈出「找不到 xx.bpl / rtlxx.bpl 等動態連結庫」錯誤。這是因為預設專案設定為動態連結執行期套件 (Runtime Packages)與動態 RTL。只需調整三項專案選項,即可產出獨立無相依的靜態連結執行檔。
| 設定 | 預設 (動態) | 修改後 (靜態) |
|---|---|---|
| 執行檔大小 | 較小 (~100-300 KB) | 較大 (~1-3 MB,含 VCL/RTL 程式碼) |
| 部署檔案 | .exe + 多個 .bpl (rtl, vcl, inet, xml...) | 僅 .exe (單一檔案部署) |
| 目標機需求 | 需安裝對應版本 BCB Runtime Packages | 無額外需求 (純 Windows API) |
| 記憶體共享 | 多程式共享 BPL 記憶體 | 各自獨立載入,記憶體佔用較高 |
| 版本衝突 | 易發生 BPL 版本不符 (DLL Hell) | 完全隔離,無版本衝突 |
midast.dll, dbxfb.dll) 隨 .exe 部署,此設定不影響驅動 DLL 載入。Link with Runtime Packages, Dynamic RTL),位於 Project → Options → Building → Delphi Compiler / C++ Compiler → Linking。rtl*.bpl, vcl*.bpl 等 Borland 封裝檔。掌握這三項設定,即可輕鬆解決 C++Builder 應用程式部署最常見的「缺少動態連結庫」問題,實現真正的綠色單一檔案發佈。