進程通信係列-消息緩衝
消息緩衝機製就是把消息直接放在結構體裏,以消息進行傳輸,缺點在於數據長度有限製,容易出錯,優點在於可以多窗口傳輸,即時傳輸
消息緩衝類:(接受代碼是重載一個消息函數,放在最後exe代碼中展現)
#include "stdafx.h" #include "copyData.h" CString name,content; COPYDATASTRUCT cd; copyData::copyData(void) { cd.dwData=0; } copyData::~copyData(void) { } int flag=0; BOOL CALLBACK find(HWND hwnd, LPARAM lParam) { char s[200]; GetWindowText(hwnd,s,200); if(s==name) { SendMessage(hwnd, WM_COPYDATA, 0, (LPARAM)(&cd)); flag=1; } return 1; } int copyData::send(CString na,CString co)//發消息 { name=na;content=co; cd.cbData=content.GetLength()+1; cd.lpData=(void*)content.GetBuffer(cd.cbData); flag=0; EnumWindows(find,NULL); return flag; }
最後更新:2017-04-03 20:19:50