使用 TMediaPlayer 製作錄音程式:WAV 檔頭手寫與 MCI 錄製全流程
核心概念 `TMediaPlayer` 封裝 MCI (Media Control Interface) 指令,支援 `waveaudio` 設備錄製。但 MC
Delphi 開發隨筆:界面優勢、模組化原則與子視窗解耦
一、舊話重提:Delphi vs C++ Builder / MFC — RAD 的贏家 「Delphi 只能寫界面」是最大的誤解。VCL 對 Windows
CodeSite 專業除錯工具深度應用指南
為什麼需要 CodeSite? Delphi 內建除錯器 (斷點、監視視窗、事件日誌) 在處理**多執行緒競態、非同步回呼、長時間運行記錄、生產環境無法附加除錯
Delphi 取得彩色游標:LoadCursorFromFile 與資源檔兩大技法
背景:VCL 內建 `LoadCursor` 僅支援黑白游標 `Screen.Cursors[i] := LoadCursor(...)` 只能載入單色 `.c
部署 Delphi 應用程式時配置 ODBC 資料來源的兩種方法
方法一:安裝程式直接操作註冊表 (傳統、適用 Inno Setup/NSIS/InstallShield) ODBC 設定儲存於 Windows 註冊表,安裝程
Delphi 程式自動建立與修復 ODBC 系統資料來源名稱 (DSN)
痛點:部署時 DSN 遺失或被使用者誤刪 資料庫應用程式依賴 ODBC 系統 DSN 連線。一旦使用者 (或清理工具) 刪除/修改註冊表中的 DSN 設定,程式
Delphi COM 元件開發:正確處理選擇性參數
背景:COM 選擇性參數的特殊性 在 COM (IDispatch) 呼叫慣例中,選擇性參數若呼叫端省略,呼叫端會傳遞一個特殊的 `VARIANT`: `VTy
Delphi 專案中使用 RC 檔字串表實現多國語言與資源管理
為什麼要用字串表? 程式碼與資料分離:避免硬編碼字串散落各單元,便於維護。 多國語言 (本地化):建立多語言 RC 檔 (如 `Strings
算術編碼演算法原理與 Delphi 實作
演算法核心概念 算術編碼將整個訊息序列編碼為實數區間 `[0, 1)` 中的一個子區間 `[Low, High)`。隨著處理每個符號,區間根據符號機率縮小。最終
TTreeView 節點操作完全指南:建構、資料綁定與事件處理
核心架構 `TTreeView` 由節點集合 `Items` (型別 `TTreeNodes`) 組成,每個節點為 `TTreeNode`。掌握 `TTreeN
使用 TMediaPlayer 實現視訊畫面擷圖
問題背景 在 Delphi/C++Builder 中開發多媒體應用,常需從影片串流擷取當前畫面 (截圖)。早期嘗試「螢幕截圖」 (`BitBlt` 桌面) 失敗
DLL Hook 技術深度解析:攔截 GDI 文字繪製實現全域字元轉換
專案背景 本專案展示一個經典的 **DLL 注入 + IAT Hook (Import Address Table Hooking)** 技術:將自訂 DLL
深入多態:善用 virtual 打造靈活可擴展的 Delphi 架構
前言:多態是設計模式的基石 翻閱《設計模式》(GoF),你會發現幾乎所有模式 (Strategy, Template Method, Factory Metho
跨執行緒取得游標控制代碼的完整解決方案
問題本質 Windows 游標是執行緒專屬資源。GetCursor() 僅能取得呼叫執行緒目前擁有的游標控制代碼。若游標由其他執行緒 (如系統工具提示、其他應用
讓 Delphi 應用程式啟用 Windows XP 視覺樣式
原理:應用程式資訊清單 Windows XP 引入了版本 6.0 的 ComCtl32.dll,提供圓角按鈕、主題感知的進度條、標籤頁等新視覺樣式。為了讓應用程
取得 DBGrid 內部編輯控制項的實用技巧
問題背景 TDBGrid 在進入編輯模式時,會動態建立一個內部的 TInplaceEdit (繼承自 TCustomEdit) 控制項來處理儲存格輸入。這個控制