Window下跨进程发消息(命名消息)

主要流程如下:

1、定义消息名,两个进程消息名必须一致

2、OpenEvent / CreateEvent

3、SetEvent / WaitForSingleObject

4、CloseHandle (各进程必须关闭消息句柄以防止句柄泄露)

以下是主要代码:

进程A:

1、

#define MYEVENT L"MYEVENT_725231EA-83DB-4880-BE50-20F6F031C5D3"

2

HANDLE hEvent = OpenEvent(EVENT_ALL_ACCESS, FALSE, MYEVENT);
if (hEvent == NULL)
{
    OutputDebugStringA("Open Event Failed Go Create\n");
    hEvent = CreateEvent(NULL, FALSE, FALSE, MYEVENT);
    if (hEvent == NULL)
    {
        OutputDebugStringA("CreateEvent FAILED , m_hEncEvent == NULL!\n");
        return -1;
    }
    OutputDebugStringA("Create Event SUCCEED\n");
}

3、

SetEvent(hEvent);

4、

CloseHandle(hEvent);

 

进程B:

1、

#define MYEVENT L"MYEVENT_725231EA-83DB-4880-BE50-20F6F031C5D3"

2、

HANDLE hEvent = OpenEvent(EVENT_ALL_ACCESS, FALSE, MYEVENT);
if (hEvent == NULL)
{
    OutputDebugStringA("Open Event Failed Go Create\n");
    hEvent = CreateEvent(NULL, FALSE, FALSE, MYEVENT);
    if (hEvent == NULL)
    {
        OutputDebugStringA("CreateEvent FAILED , m_hEncEvent == NULL!\n");
        return -1;
    }
    OutputDebugStringA("Create Event SUCCEED\n");
}

3、

WaitForSingleObject(hEvent, INFINITE)

4、

CloseHandle(hEvent);

源码链接:https://download.csdn.net/download/qq_33650889/13569481

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值