方法一:WM_COPYDATA
HWND hReceiveDataWindow = FindWindow(NULL,....)
COPYDATASTRUCT data;
data.cbdata = strlen(pStr);
data.lpData = pStr;
SendMessage(hReceiveDataWindow ,WM_COPYDATA,(WPARAM)GetFocus(),(LPARAM)&data);
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()
方法三:映象文件
CreateFileMapping
REF.最基础,效率最高的方法
最好的参考书《Windows核心编程》第17章 内存映射文件
方法四:匿名管道:CreatePipe
方法五:命名管道:createnamedpipe
REF.
方法六:邮件通道
createmailslot
方法七:网络接口,socket,但要求有网卡。可以实现不同主机间的IPC
另一篇总结的比较好的文章