SRC/
├── INSTALL/ # 安裝程式原始碼
├── IPMSG.MAK/.MDP # VC4/VC6 專案檔
├── PROT-ENG.TXT # 通訊協定英文規格
├── IPMSG.CPP/.H # 主應用程式類
├── MAINWIN.CPP/.H # 主視窗 (好友清單、狀態)
├── MSGMNG.CPP/.H # Socket 管理核心
├── SENDDLG.CPP/.H # 發送訊息/檔案對話框
├── RECVDLG.CPP/.H # 接收訊息/檔案處理
├── SHARE.CPP/.H # 檔案傳輸接收管理
├── CFG.CPP/.H # 系統設定持久化
├── LOGDLG/LOGMNG # 訊息日誌
├── PLUGIN.CPP # 外掛載入機制
├── BLOWFISH.CPP/.H # 加密演算法
├── TLIB.H # 共用類別/結構定義
├── MSGSTR.H # 字串常數
└── TWIN/TDLG/TLIST/TREGIST # 基礎視窗/對話框/鏈結串列/登錄表封裝
IPMSG.MDP → VC6 提示轉換 .MAK → .DSP/.DSW。ipmsg - Win32 Debug (或 Release)。JAPANESE → 改 ENGLISH 產出英文版。| 檔案 | 核心職責 |
|---|---|
MSGMNG | UDP 廣播上線/下線、TCP 連線管理、封包收發分派、重傳機制 |
SENDDLG | 發送介面、檔案拖曳、封裝封包 (含檔案元資料) |
RECVDLG | 接收彈窗、檔案存儲路徑選擇、進度顯示 |
SHARE | 檔案傳輸核心:Memory-Mapped File 讀取、分塊傳輸、斷點續傳 |
MAINWIN | 好友清單 UI、狀態圖示、右鍵選單、視窗狀態儲存 |
BLOWFISH | Blowfish 對稱加密,保護傳輸資料機密性 |
BR_ENTRY)、下線通知 (BR_EXIT)、用戶查詢 (GET_LIST)。SENDMSG、RECVMSG、FILE_DATA、GET_FILE 等。FILE_DATA 封包 → TCP 可靠傳輸;接收端重組寫入檔案。CreateFileMapping + MapViewOfFile,避免大檔案完整讀入記憶體,支援 GB 級傳輸。GET_FILE 指定續傳位置。IP Messenger 以精簡代碼實現企業級即時通訊核心功能,是學習 Windows 網路程式設計、P2P 協定設計、大檔傳輸工程的極佳案例。