程序間通訊 匿名管道

2021-10-09 07:24:15 字數 1297 閱讀 6963

使用匿名管道做程序通訊,需要用父程序建立乙個子程序,該子程序的標準輸入輸出控制代碼由父程序指定。

無論父程序還是子程序,都可以收發資料,這裡僅演示父程序發資料,子程序列印資料。

父程序迴圈從控制台讀資料,並傳送給子程序,子程序用對話方塊列印資料,約定子程序收到"quit"後退出。

#define _crt_secure_no_warnings

#include

#include

handle g_hread, g_hwrite;

bool createchildprocess()

// 建立子程序,設定標準輸入輸出裝置

startupinfo si;

process_information pi;

zeromemory

(&si,

sizeof

(startupinfo));

si.cb =

sizeof

(startupinfo)

; si.dwflags = startf_usestdhandles;

si.hstdinput = g_hread;

si.hstdoutput = g_hwrite;

si.hstderror =

getstdhandle

(std_error_handle);if

(false ==

createprocess

(text

("c:\\users\\gsy\\source\\repos\\2023年暑假學習\\debug\\匿名管道-接收端.exe"),

null

,null

,null

, true,0,

null

,null

,&si,

&pi)

)else

return true;

}void

senddata()

}int

main()

else

while

(true)

return0;

}

#include

#include

intmain()

printf

("%s\n"

, szbuffer)

;messageboxa(0

, szbuffer,

"子程序接收到的資料"

, mb_ok);}

return0;

}

程序間通訊 匿名管道

最近實現乙個遠端超級終端的功能,通訊模式是這樣的 客戶端 通過網路傳送cmd命令到 伺服器端 通過程序間通訊 管道 將此cmd命令發給 cmd.exe程式,cmd.exe執行此cmd命令 接下來 cmd.exe 程式將執行結果返回 伺服器端 傳送此次結果到 客戶端,客戶端對結果進行顯示 其中伺服器端...

程序間通訊 匿名管道

1.程序通訊的目的 1 資料傳輸 乙個程序需要將它的資料傳輸給另乙個程序 2 資源共享 多個程序之間共享同樣的資源 3 通知事件 乙個程序需要向另乙個或一組程序傳送訊息,通知它們發生了什麼事情 2.管道 管道是一種程序之間通訊的一種方式,我們把從乙個程序連線到另乙個程序的資料流叫做管道 3.匿名管道...

程序間通訊 匿名管道通訊

將關於匿名管道通訊過程中遇到的問題以及心得總結一下 使用場合 匿名管道通訊對執行緒間通訊和父子程序之間的通訊非常有用 一下 分三部分 1.建立匿名管道 2.建立子程序 1 使用getstdhandle函式獲取標準輸出裝置的控制代碼 2 使用setstdhandle函式將標準輸出到寫匿名管道 3 使用...