在 Windows 使用重疊 IO 命名管道時,若發現只能由客戶端向伺服端發送資料,伺服端無法向客戶端發送,且偶爾發生封包遺失,通常是因為伺服端沒有為每個客戶端建立對應的管道實例。
雙向通訊需要伺服端也建立可讀寫的管道,並正確處理重疊事件。客戶端發送資料時若前一兩個包遺失,可能與非同步讀寫的事件同步有關,建議檢查 ConnectNamedPipe 與 ReadFile/WriteFile 的搭配使用。
現象 代碼順序:標記1 → 表格1 → 標記2 → 表格2
錯誤現象 嘗試將 JSON 物件直接轉為字串(如 jsonO
問題背景 Android 4.4 (KitKat) 後,發送
代碼主要問題 WM_PAINT 中重複獲取 DC:Begi