阅读530 返回首页    go 阿里云 go 技术社区[云栖]


进程通信系列-消息缓冲

  消息缓冲机制就是把消息直接放在结构体里,以消息进行传输,缺点在于数据长度有限制,容易出错,优点在于可以多窗口传输,即时传输


消息缓冲类:(接受代码是重载一个消息函数,放在最后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

  上一篇:go httpclient通过POST来上传文件,而不是通过流的形式,并在服务端进行解析(通过httpmime.jar来操作)
  下一篇:go Linux命令行之逗趣无极限