CreatePipe 函数[通俗易懂]

CreatePipe 函数[通俗易懂]创建管道共享数据[code="C++"]//创建匿名管道SECURITY_ATTRIBUTESsa;HANDLEhRead,hWrite;sa.nLength=sizeof(SECURITY_ATTRIBUTES);sa.lpSecurityDescriptor=NULL;sa.bInheritHandle=TRUE;CreatePipe(…


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
创建管道共享数据


//创建匿名管道
SECURITY_ATTRIBUTES sa;
HANDLE hRead,hWrite;
sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;
CreatePipe(&hRead,&hWrite,&sa,0);

MSDN:[url]http://msdn.microsoft.com/en-us/library/aa365152(VS.85).aspx[/url]

—————

CreatePipe Function

创建一个匿名管道,并返回管道的句柄。

语法

C++

BOOL WINAPI CreatePipe(

__out PHANDLE hReadPipe,

__out PHANDLE hWritePipe,

__in_opt LPSECURITY_ATTRIBUTES lpPipeAttributes,

__in DWORD nSize

);

参数

hReadPipe [out]

指向一个变量的指针,该变量接收管道的读取句柄。

hWritePipe [out]

指向一个变量,该变量接收管道的写入句柄。

lpPipeAttributes [in, optional]

一个指向SECURITY_ATTRIBUTES结构的指针,该结构决定返回的句柄是否能被子进程所继承。如果lpPipeAttributs 参数为NULL,则句柄不能继承。

SECURITY_ATTRIBUTES 结构的lpSecurityDescriptor 成员指定了新管道的安全描述符。如果该参数为NULL,管道会获得一个默认的安全描述符。管道的默认安全描述符中的ACL来自创建者的主标记或模拟标记。

nSize [in]

管道缓冲的大小(字节)。这个大小仅是一个建议;系统使用一个和值的缓冲计算机制来计算这个值。如果该参数为0,系统使用默认的缓冲大小。

返回值

如果函数成功,返回非零值;否则返回零值。

备注

该函数创建一个管道,为指定的管道指派存储缓冲的大小。该函数也创建之后用于进程读取或写入缓冲的句柄。

从管道里读取内容,进程通过ReadFile函数并利用读取句柄来实现。

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159379.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网络功能虚拟化NFV[通俗易懂]

    网络功能虚拟化NFV[通俗易懂]1NFV简介1.1NFV的产生背景网络功能虚拟化(NFV)技术是为了解决现有专用通信设备的不足而产生的。通信行业为了追求设备的高可靠性、高性能,往往采用软件和硬件结合的专用设备来构建网络。比如专用的路由器、CDN、DPI、防火墙等设备,均为专用硬件加专用软件的架构。这些专用通信设备带来高可靠性和高性能的同时,也带来一些问题。网元是软硬件垂直一体化的封闭架构,业务开发周期长、技术创新难、扩展…

    2022年9月9日
  • js正则使用变量_JavaScript正则

    js正则使用变量_JavaScript正则varcookieName=”admin”; varcookie=document.cookie; varpat=newRegExp(“^”+cookieName+”=\\w*”,”g”);//输出的正则表达式/^admin=\w*/g

    2022年9月15日
  • webstrom激活码2021[最新免费获取]「建议收藏」

    (webstrom激活码2021)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月27日
  • pycharm安装包报错

    pycharm安装包报错  相信有很多Python初学者在使用pycharm安装一些包时会遇到报错现象!  我也是一名Python初学者,当然也会遇到这种问题!当遇到上述问题时,我个人觉得是因为“pip”的版本问题,所以大家可以先更新“pip”(通过cmd更新:python-mpipinstall–upgradepip)。   …

    2022年5月16日
  • cmd net命令详解与图片示意[通俗易懂]

    cmd net命令详解与图片示意[通俗易懂]net命令大全,net命令用法,net网络命令,net命令使用,net命令集,net命令介绍,net常用命令,net命令的使用技巧,net命令如何使用下面对NET命令的不同参数的使用技巧介绍如下:1、NetViewI  作用:显示域列表、计算机列表或指定计算机的共享资源列表。  命令格式:Netview[\computername|/domain[:domainname]]  …

    2022年5月8日
  • crm工作机会实体

    crm工作机会实体

    2022年1月17日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号