MFC呼叫另乙個MFC程式並進行通訊

2021-06-22 04:27:58 字數 1238 閱讀 2833

父程序標頭檔案定義

process_information m_pi; 

handle m_hread, m_hwrite;

父程序在需要呼叫子程序的地方

//建立管道

security_attributes sa;

sa.nlength = sizeof(security_attributes);

sa.lpsecuritydescriptor = null;

sa.binherithandle = true;

createpipe(&m_hread, &m_hwrite, &sa, 0);

//建立程序

startupinfo si = ;

si.dwflags=startf_usestdhandles;

si.hstdoutput = m_hwrite;

si.hstdinput = m_hread;

si.hstderror=getstdhandle(std_error_handle);

createprocess(應用名, 引數, 0, 0, true, 0, 0, 0, &si, &m_pi);

父程序接收訊息

dword bytesread = 0;

readfile(m_hread, 接收的資料, 接收資料的長度, &bytesread, null);

父程序傳送訊息

dword byteswrite = 0;

writefile(m_hwrite, 接收的資料, 接收資料的長度, &bytewrite, null);

子程序傳送訊息

handle m_handle = getstdhandle(std_output_handle);      

dword byteswrite = 0;

writefile(m_handle, 傳送的資料, 傳送的資料長度, &byteswrite, null);

子程序接收訊息

handle m_handle = getstdhandle(std_input_handle);      

dword bytesread = 0;

readfile(m_handle, 接收的資料, 接收的資料長度, &bytesread, null);

MFC怎樣呼叫另乙個類的函式?

假如有類a,類b兩個類。如果想在b中呼叫a的成員函式,該怎麼辦呢?方法一 在類b的cpp檔案中包含a類的標頭檔案,然後在b的需要呼叫a的函式的函式中,新增 include a.h b funcb 由於類a的funca不是靜態 static 函式,所以在b中不能這樣呼叫 include a.h b f...

iOS 呼叫另乙個程式

在 ios 裡,程式之間都是相互隔離,目前並沒有乙個有效的方式來做程式間通訊,幸好 ios 程式可以很方便的註冊自己的 url scheme,這樣就可以通過開啟特定 url 的方式來傳遞引數給另外乙個程式。例如在 ipad 上瀏覽網頁,並且 ipad 已經安裝了 hd,那麼就開啟下面這個鏈結就會在 ...

呼叫另乙個Activity

1 建立主activity 注意通過權重來分配尺寸的方式 元件1 android layout width 0dp android layout weight 1 元件2 android layout width wrap content 2 在主類中指定onclick所對應的sendmessage...