美文网首页
进程间通信之WM_COPYDATA

进程间通信之WM_COPYDATA

作者: 李里里Riss | 来源:发表于2017-03-10 16:07 被阅读0次

在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有

-> 使用内存映射文件
-> 通过共享内存DLL共享内存
-> 使用SendMessage向另一进程发送WM_COPYDATA消息

比起前两种的复杂实现来,WM_COPYDATA消息无疑是一种经济实惠的一中方法.

使用方法:
SendMessage(hwnd,WM_COPYDATA,wParam,lParam);
其中,WM_COPYDATA对应的十六进制数为0x004A
wParam设置为包含数据的窗口的句柄。lParam指向一个COPYDATASTRUCT的结构:
typedef struct tagCOPYDATASTRUCT
{
DWORD dwData;//用户定义数据
DWORD cbData;//数据大小
PVOID lpData;//指向数据的指针
}COPYDATASTRUCT;

该结构用来定义用户数据。

有时候WM_COPYDATA收不到信息的问题:
1、SendMessage()函数中,wParam不能为空,有时候做测试时会出现,lParam可以为空;
2、低权限进程不能想高权限发送该消息,同时也包括其他许多消息也是如此。

相关文章

  • 进程间通信之WM_COPYDATA

    在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有 -> 使用内存映射文件-> 通过...

  • linux进程间通信(1)

    一、进程通信概述 1、什么是进程间通信?什么是线程间通信? 进程间通信: 进程间通信就指的是用户空间中进程A与进程...

  • Android通过继承Binder类实现多进程通信

    上一篇讲到用AIDL实现进程间通信,地址:Android进程间通信之AIDL AIDL的底层是通过Binder进行...

  • 第二十三章 进程间通信介绍(一)

    本章目标: 进程同步与进程互斥 进程间通信目的 进程间通信发展 进程间通信分类 进程间共享信息的三种方式 IPC对...

  • 进程间的通信

    进程间的通信主要分为本机器进程间的通信和不同机器间进程的通信。本文主要描述本机进程间的通信。 一、传统Linux的...

  • 进程间通信

    进程间通信 进程空间相对独立,资源无法相互获取,此时在不同进程间通信需要专门方法 进程间通信就是在不同的进程间进行...

  • 进程间通信,线程间通信

    进程间通信 进程间通信又称IPC(Inter-Process Communication),指多个进程之间相互通信...

  • Android IPC机制

    IPC 即Inter-Process-Communication,含义是进程间通信/跨进程通信。是指多个进程间通信...

  • 进程管理(五)进程间通信、死锁

    (一)进程间通信 除了同步和互斥外,进程间还有其他的通信手段。 进程间的通信 --> IPC (InterProc...

  • 6. 进程间通信

    参考链接:1. 进程间通信及使用场景2. 进程间通信机制IPC3. 看图理解进程间通信IPC==重点4. 进程间通...

网友评论

      本文标题:进程间通信之WM_COPYDATA

      本文链接:https://www.haomeiwen.com/subject/hcfogttx.html