当前位置: 开源爱好者 » 编程教程 » VC++教程 » 正文

C++ CS结构邮槽实例代码分享 含客户端服务端

C++ 创建一个包括了客户端和服务端的邮槽实例,并尝试打开邮槽、写入数据:

#include<windows.h>//包含头文件
#include<stdio.h>
main()//主函数
{
HANDLE mail2;//定义邮槽句柄
char text[]="您好,此为消息测试";//初始化消息
DWORD writetext;//用于获取实际发送值
mail2=CreateFile("\\\\.\\mailslot\\my",GENERIC_WRITE,FILE_SHARE_READ,NULL, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);//打开文件
if(INVALID_HANDLE_VALUE==mail2)
{
  printf("邮槽打开失败!\r\n");
  }
else
{
	if(WriteFile(mail2,text,sizeof(text),&writetext,NULL))//写入数据
{
  Sleep(1000);
		printf("数据写入成功\r\n");	//数据写入成功
  }
else
{
  printf("数据写入失败\r\n");
  }
CloseHandle(mail2);
}
Sleep(10000);
return 0;
}

邮槽服务端代码:

#include<windows.h>//包含头文件
#include<stdio.h>
main()//主函数
{
HANDLE mail;//定义邮槽句柄
mail=CreateMailslot("\\\\.\\mailslot\\my",0,MAILSLOT_WAIT_FOREVER,NULL);//创建邮槽
if(mail==INVALID_HANDLE_VALUE)//判断邮槽句柄
{
	printf("创建邮槽失败!\r\n");//提示信息
	CloseHandle(mail);
  }
else
{
printf("创建邮槽成功,正在读取数据......!\r\n");
char text[200];	//定义字符数组
DWORD readtext;//用于获取实际读取值
while(1)
{
if(ReadFile(mail,text,200,&readtext,NULL))//读取数据
{
  printf(text);	//显示数据
    printf("\r\n");	
  break;
   }
}}
Sleep(100000);
return 0;
}
相关内容:

CopyRight 2015© 开源爱好者 All Rights Reserved 豫ICP备16030607号 隐私声明 网站地图