日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Win Api 有名管道通信--扫雷辅助(四)

發布時間:2024/4/19 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Win Api 有名管道通信--扫雷辅助(四) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有名管道的使用

同linux 下一樣 通過有名管道 實現非父子進程(資源繼承)關系的 進程間通信(Inter Process Communicate)

無名管道是通過內核進行內存共享 , 而有名管道是通過文件系統進行的

核心代碼

m_hPipe = CreateNamedPipe(lpPipeName, PIPE_ACCESS_DUPLEX | FILE_FLAG_OVERLAPPED, \PIPE_TYPE_BYTE | PIPE_READMODE_BYTE | PIPE_WAIT, 1, 0, 0, 1000, NULL);

API 用于創建一個有名管道 , 并且返回它的句柄

if (ReadFile(m_hPipe, buffer, sizeof(buffer), &ReadNum, NULL) == FALSE)

API 用于讀取管道 , 放在線程中輪詢吧

CSting m_cmd; // 這里比較重要的一點 WriteFile(m_hPipe, m_cmd.GetString(), m_cmd.GetAllocLength()*2, &writeNum, NULL);

API 用于寫管道, 第二個,就是字符串指針, 第三個參數就是 寫入字符數

這里有一點 很坑的事情, 由于管道是以字節為單位傳遞的數據 ,
然而 使用 unicode 之后, 一個字符是兩個字節 , 所以這個寫入字節數 需要設置為

GetAllocLength() * 2

這樣才能完整的把自己的書籍傳遞過去 , 否則的話,會數據不完整
而導致在管道中滯留,

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Win Api 有名管道通信--扫雷辅助(四)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。