使用匿名管道做程序通訊,需要用父程序建立乙個子程序,該子程序的標準輸入輸出控制代碼由父程序指定。
無論父程序還是子程序,都可以收發資料,這裡僅演示父程序發資料,子程序列印資料。
父程序迴圈從控制台讀資料,並傳送給子程序,子程序用對話方塊列印資料,約定子程序收到"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 使用...