您的位置:首页 > 其它

wince进程通信----点对点消息队列

2009-12-29 22:11 281 查看
采取消息队列来进程通信还是比较容易上手

主要以下步骤,无论发送放还是接收消息方,

首先都要使用到结构体

HANDLE CreateMsgQueue(
LPCWSTR lpszName,
LPMSGQUEUEOPTIONS lpOptions
);


前面为队列创建名称,这就要发送方与接收方一致后面传入刚刚初始化的参数

然后紧接着就要发送数据

BOOL WriteMsgQueue(
HANDLE hMsgQ,
LPVOID lpBuffer,
DWORD cbDataSize,
DWORD dwTimeout,
DWORD dwFlags
);

主要说明第三个参数,这个参数是表是对发送后程序的处理,如此处为0,表示无阻塞,不管程序成功与否

都会正常返回不会等待,通常还会放置无穷大,0xffffffff这样使程序一定在返回下才得以继续。

最后一个标识我一般填0,或许有更多知识尚未被我使用

这样发送消息就完成

与之对应,有接收消息ReadMsgQueue,这个函数一般都会放在一个单独的线程来做,而与上面不同的就是MSGQUEUEOPTIONS的

参数

bReadAccess 要与上面相反,其余都类似于串口的新开线程接收~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: