C++命名管道详解及简单案例基于VS2013


C++命名管道详解及简单案例(基于VS2013),包括服务器端和客户端
资源截图
代码片段和文件信息
// NamedPipeClt.cpp : 定义控制台应用程序的入口点。
//

#include
#include

using namespace std;

int main()
{
cout << “这是命名管道测试程序的客户端“ << endl;
char buf[256] = ““;
DWORD rLen = 0;
DWORD wLen = 0;
Sleep(1000); //等待管道创建成功!  
if (!WaitNamedPipe(TEXT(“\\.\Pipe\pipeTest“) NMPWAIT_WAIT_FOREVER))
{
cout << “connect the namedPipe failed!“ << endl;
return 1;
}

HANDLE hPipe = CreateFile(          //创建管道文件,即链接管道  
TEXT(“\\.\Pipe\pipeTest“) //管道名称  
GENERIC_READ | GENERIC_WRITE   //文件模式  
0                              //是否共享  
NULL                           //指向一个SECURITY_ATTRIBUTES结构的指针  
OPEN_EXISTING                  //创建参数  
FILE_ATTRIBUTE_NORMAL          //文件属性,NORMAL为默认属性  
NULL);                          //模板创建文件的句柄  

if (INVALID_HANDLE_VALUE == hPipe)
{
cout << “打开通道失败!“ << endl;
return 2;
}
char strMessage[] = “命名管道测试程序“;
if (!WriteFile(hPipe strMessage sizeof(strMessage) &wLen 0)) //向管道发送数据  
{
cout << “向通道写数据失败!“ << endl;
return 3;
}
if (!ReadFile(hPipe buf 256 &rLen NULL)) //读取管道数据
{
cout << “从通道读数据失败!“ << endl;
return 4;
}
else
cout << “从服务器端接收数据 : “ << buf << endl << “数据长度为:“ << rLen << endl;

Sleep(1000);   //执行挂起一段时间
CloseHandle(hPipe); //关闭管道  
system(“pause“);
return 0;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-03-10 15:42  NamedPipe
     目录           0  2018-03-10 15:42  NamedPipeNamedpipeSlient
     目录           0  2018-03-10 15:42  NamedPipeNamedpipeSlientDebug
     文件       68096  2018-03-10 10:33  NamedPipeNamedpipeSlientDebugNamedpipeSlient.exe
     文件      482736  2018-03-10 10:33  NamedPipeNamedpipeSlientDebugNamedpipeSlient.ilk
     文件      977920  2018-03-10 10:33  NamedPipeNamedpipeSlientDebugNamedpipeSlient.pdb
     目录           0  2018-03-10 15:42  NamedPipeNamedpipeSlientNamedpipeSlient
     文件        1518  2018-03-10 15:24  NamedPipeNamedpipeSlientNamedpipeSlientClient.cpp
     目录           0  2018-03-10 15:42  NamedPipeNamedpipeSlientNamedpipeSlientDebug
     文件      179388  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugClient.obj
     文件         150  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.log
     目录           0  2018-03-10 15:42  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tlog
     文件       29258  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tlogCL.read.1.tlog
     文件         876  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tlogCL.write.1.tlog
     文件         210  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tlogNamedpipeSlient.lastbuildstate
     文件         852  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tlogcl.command.1.tlog
     文件        1546  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tloglink.command.1.tlog
     文件        2768  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tloglink.read.1.tlog
     文件         850  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugNamedpipeSlient.tloglink.write.1.tlog
     文件      732160  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugvc120.idb
     文件      430080  2018-03-10 10:33  NamedPipeNamedpipeSlientNamedpipeSlientDebugvc120.pdb
     文件        4094  2018-03-10 10:24  NamedPipeNamedpipeSlientNamedpipeSlientNamedpipeSlient.vcxproj
     文件         947  2018-03-10 10:24  NamedPipeNamedpipeSlientNamedpipeSlientNamedpipeSlient.vcxproj.filters
     文件    32047104  2018-03-10 15:36  NamedPipeNamedpipeSlientNamedpipeSlient.sdf
     文件         991  2018-03-10 10:23  NamedPipeNamedpipeSlientNamedpipeSlient.sln
     文件       19968  2018-03-10 15:36  NamedPipeNamedpipeSlientNamedpipeSlient.v12.suo
     文件       68096  2018-03-10 10:33  NamedPipeNamedpipeSlient.exe
     目录           0  2018-03-10 15:42  NamedPipeNamedpipe_Server
     目录           0  2018-03-10 15:42  NamedPipeNamedpipe_ServerDebug
     文件       68096  2018-03-10 10:31  NamedPipeNamedpipe_ServerDebugNamedpipe_Server.exe
     文件      515800  2018-03-10 10:31  NamedPipeNamedpipe_ServerDebugNamedpipe_Server.ilk
............此处省略22个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)