C# 正則表達式深度實戰:RegexOptions、替換字符、分組捕獲與編譯優化全解析
前言:原文標題雖為「C++ WSAAsyncSelect」,但內容實為 C# 正則表達式詳解。本文按實際內容重寫。 1. 字符串字面量中的引號轉義 C# 普通
VC/MFC 讀取 INI 配置文件:GetPrivateProfileSection 完整實戰指南
INI 文件結構速覽 Windows INI 文件採用「節 - 鍵值對」結構: [Setting] 11=11@163.cn 22=22@163.cn ope=
《C++ Primer Plus》讀書筆記(二):第5-8章核心概念精華
前言 本文整理自《C++ Primer Plus》第 5 至 8 章的核心知識點,涵蓋迴圈與關係表達式、分支語句與邏輯運算符、函數設計、記憶體模型與名稱空間等進
C++ I/O 多工模型:Select 模型完整實作範例
前言 在網路程式設計中,如何有效率地處理多個同時連線的 Socket 連接,一直是開發者面臨的核心挑戰。Select 模型作為經典的 I/O 多工機制,雖然在現
MFC 從零手寫 CWnd 窗口框架:消息映射、創建流程與資源管理全解析
為什麼要手寫 CWnd 框架? MFC 的文檔/視圖架構 (Doc/View) 雖強大,但對於輕量級工具、嵌入式窗口、或需要精確控制窗口生命週期的場景,直接繼承
C++ 解析 PE 結構:遍歷當前進程 IAT (導入地址表) 完整實作
背景知識:IAT 是什麼? 導入地址表 (Import Address Table, IAT) 是 PE 文件中存放動態鏈接庫 (DLL) 導入函數實際地址的表
C++ 獲取本機 IP 位址:WSAStartup、gethostname、gethostbyname 完整流程與跨平台適配
前言:網路程式的第一步是知道自己是誰 Windows Sockets (Winsock) 提供 gethostname + gethostbyname 獲取本機
C++ Primer Plus 閱讀筆記(三):第 9-10 章——程式結構、儲存類別、命名空間、類別設計精華
前言:從 C 到 C++ 的工程化思維轉變 第 9 章建立多檔案專案架構,第 10 章深入類別機制。本筆記提煉核心知識點、易混淆細節、現代 C++ 對應實踐,作
C++ 全域鍵盤鉤子實戰:DLL 注入、WH_KEYBOARD、訊息轉發與 MFC 對話框整合
前言:全域鍵盤鉤子捕獲系統級按鍵 Windows SetWindowsHookEx(WH_KEYBOARD, ...) 將 DLL 注入所有執行緒,攔截鍵盤訊息
C++ 判斷文件/目錄是否存在的標準跨平台實現:GetFileAttributes vs std::filesystem
前言 判斷路徑是否存在、區分文件與目錄是基礎文件操作。Windows API `GetFileAttributes` 是傳統高性能方案;C++17 `` 提供標
C++ IAT Hook 實戰:修改導入地址表劫持 MessageBoxA 完整實現與 x64 遷移指南
前言 IAT Hook (Import Address Table Hooking) 通過修改 **當前模塊導入表中目標 DLL 函數的地址項**,將其指向自定
C++ 文件打開對話框 GetOpenFileName 完整用法指南:OPENFILENAME 結構體陷阱與最佳實踐
前言 `GetOpenFileName` / `GetSaveFileName` 是 Windows 經典通用文件對話框 API。核心在於正確填充 `OPENF
C++ 封裝資料夾選擇對話框 (SHBrowseForFolder) 類:CDirDialog
前言 GetPath()` 簡潔介面。 類別設計 DirDialog.h #pragma once #ifndef __DIRDIALOG_H__ #d
Java Web 登錄認證完整實戰:Struts2 + Session + Cookie + JSP (非 C++ 線程封裝)
前言 **注意:原標題為「C++ 封裝線程類」,但內容實為 Java Web 登錄認證完整範例 (Struts2 Action、Session 管理、JSP 頁
C++ std::string 去除首尾空白字符高效實現:基於 find_first/last_not_of
前言 C++ 標準庫 `` 未提供內建 `trim` 函數 (C++23 才引入 `std::trim`)。最通用、高效、無依賴的實現是利用 `find_fir
MFC 動態創建控件完整指南:從創建、訊息映射到資源釋放的全生命週期管理
前言 MFC 中控件分為**靜態創建** (資源編輯器拖放、對話框模板自動創建) 與**動態創建** (運行時代碼 `new` + `Create()`)。動態
VC++ 終止進程的兩種核心方法:TerminateProcess vs 任務管理器式遍歷
前言 在 Windows 下強制結束進程,核心 API 是 TerminateProcess。但關鍵難點在於**如何精準獲取目標進程的 PID (Process
Java SMTP 郵件發送實作:基於 Socket 手動協議交互 (非 C++ PE 文件判斷)
前言 **注意:原標題為「C++ 判斷 PE 文件」,但內容實為 Java 使用 Socket 手動實現 SMTP 協議發送郵件 (含 Base64 認證、HT