windows程序間通訊的各種方法

2021-04-13 03:02:10 字數 1035 閱讀 7136

原文出處:http://blog.chinaunix.net/u/24810/showart_276228.html

方法一:wm_copydata   

hwnd   hreceivedatawindow   =   findwindow(null,....)  

copydatastruct   data;  

data.cbdata   =   strlen(pstr);  

data.lpdata   =   pstr;  

sendmessage(hreceivedatawindow   ,wm_copydata,(wparam)getfocus(),(lparam)&data);   

ref.最簡單的方式

方法二:dll共享

#pragma   data_seg   (".ashare")  

int   iwhatyouuseintwo   =   0;  

#pragma   data_seg()   

方法三:映象檔案

ref.最基礎,效率最高的方法

最好的參考書《windows核心程式設計》第17章 記憶體對映檔案

方法四:匿名管道:createpipe   

方法五:命名管道:createnamedpipe 

方法六:郵件通道

createmailslot 

方法七:網路介面,socket,但要求有網絡卡。可以實現不同主機間的ipc

另一篇總結的比較好的文章

windows程序間通訊

摘 要 隨著人們對應用程式的要求越來越高,單程序應用在許多場合已不能滿足人們的要求。編寫多程序 多執行緒程式成為現代程式設計的乙個重要特點,在多程序程式設計中,程序間的通訊是不可避免的。microsoft win32 api 提供了多種程序間通訊的方法,全面地闡述了這些方法的特點,並加以比較和分析,...

Windows下程序間通訊

1 程序與程序通訊 2 程序通訊方法 2.1 檔案對映 win32 api中共享記憶體 shared memory 實際就是檔案對映的一種特殊情況。程序在建立檔案對映物件時用0xffffffff來代替檔案控制代碼 handle 就表示了對應的檔案對映物件是從作業系統頁面檔案訪問記憶體,其它程序開啟該...

Windows程序間通訊方式

align center windows程序間通訊方式 align 1 檔案對映 win32 api允許多個程序訪問同一檔案對映物件,各個程序在它自己的位址空間裡接收記憶體的指標。通過使用這些指標,不同程序就可以讀或修改檔案的內容,實現了對檔案中資料的共享。應用程式有三種方法來使多個程序共享乙個檔案...