C++进程通信之邮槽
来源:互联网 发布:java hashmap stream 编辑:程序博客网 时间:2024/05/21 02:21
邮槽是基于广播通信体系设计出来的,它采用无连接的不可靠的数据传输。
邮槽是一种单向通信机制,创建邮槽的服务器进程读取数据,打开邮槽的客户端写入数据。
邮槽可以实现一对多的单向通信。但是数据量小,通常都是424字节以下。
一、服务器端程序
void CMailSlotSrcView::OnMailRecv(){HANDLE hMailSlot;//用来保存将要创建的邮槽句柄//创建邮槽hMailSlot = CreateMailslot("\\\\.\\mailslot\\MyMailSlot", //圆点表示本地机器,可以改为服务器所在机器的名称,实现网络间进程的通信0, MAILSLOT_WAIT_FOREVER, NULL);if (INVALID_HANDLE_VALUE == hMailSlot){MessageBox("创建邮槽失败!");return;}//从邮槽读取数据char buf[100];DWORD dwRead;if (!ReadFile(hMailSlot, buf, 100, &dwRead, NULL)){MessageBox("读取数据失败!");CloseHandle(hMailSlot);return;}MessageBox(buf);CloseHandle(hMailSlot);}
二、客户端程序
void CMailSlotClientView::OnMailSend(){//打开邮槽HANDLE hMailSlot;//用来保存将要打开的邮槽句柄hMailSlot = CreateFile("\\\\.\\mailslot\\MyMailSlot", GENERIC_WRITE,FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);if (INVALID_HANDLE_VALUE == hMailSlot){MessageBox("打开邮槽失败!");return;}//向邮槽写入数据char buf[] = "dadadadakai";DWORD dwWrite;if (!WriteFile(hMailSlot,buf, strlen(buf)+1, &dwWrite, NULL)){MessageBox("写入数据失败!");CloseHandle(hMailSlot);return;}CloseHandle(hMailSlot);}
0 0
- 进程通信之邮槽
- 进程间通信之邮槽
- 进程间通信之邮槽
- Windows进程间通信之邮槽
- 进程间通信之邮槽
- C++进程通信之邮槽
- 进程通信之邮槽之间的通信
- c函数之【进程通信(IPC)函数】
- Windows核心编程之邮槽实现进程间通信
- 进程通信之管道通信
- 进程通信之信号通信
- 进程通信之管道通信
- 进程通信之管道通信
- 进程通信之pipe通信
- 【进程通信】之管道通信
- linux C 编程 之 进程间通信(IPC)
- linux c之通过管道实现兄弟间进程通信:
- linux c之通过管道父子进程实现同步通信
- 安卓大话设计模式
- spring 的4种事务管理(1种编程式+3种声明式)
- 【算法面试题】交换排序问题
- 创建版本库
- codeforces 735 D. Taxes (数学)
- C++进程通信之邮槽
- SQL基本语法-表
- 指令的交互
- Java中数字的有效位数,和小数点后保留的小数位
- leaflet加载百度地图(矫正篇)
- 学习卡尔曼滤波推导笔记系列(1)
- FlywayException:Validate failed:Migration checksum mismatch
- HTML标记语言学习之二
- 上传本地文件到hdfs