创建管道共享数据
//创建匿名管道
SECURITY_ATTRIBUTES sa;
HANDLE hRead,hWrite;
sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;
CreatePipe(&hRead,&hWrite,&sa,0);
MSDN:
http://msdn.microsoft.com/en-us/library/aa365152(VS.85).aspx
---------------
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函数并利用读取句柄来实现。
分享到:
相关推荐
[color=var(--theme-primary-base)]CreatePipe函数使用 [color=var(--theme-primary-base)]安全 _ 属性结构创建两个管道的读写端的可继承句柄。 一个管道的读取端用作子进程的标准输入,另一个管道的写入端是子进程...
[color=var(--theme-primary-base)]CreatePipe 函数使用 [color=var(--theme-primary-base)]安全 _ 属性 结构创建两个管道的读写端的可继承句柄。 一个管道的读取端用作子进程的标准输入,另一个管道的写入端是子...
API之网络函数1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一...
16.3.1 CreatePipe()函数 628 16.3.2 CreateProcess()函数 629 16.3.3 GetStdHandle()函数 631 16.3.4 ReadFile()和WriteFile() 16.1.9 函数 632 16.3.5 一个利用匿名管道在父子 16.1.9 进程间通信的示例 632 16.4 ...
在调用CreatePipe()函数时,如果管道服务器将lpPipeAttributes 指向的SECURITY_ATTRIBUTES数据结构的数据成员bInheritHandle设置为TRUE,那么CreatePipe()创建的管道读、写句柄将会被继承。管道服务器可调用...
实用程序函数可将实例方法转换为上下文无关的函数,以供和无点函数编程使用。 将任何x.whatever(...args)转换为x.whatever(...args) whatever(...arg)(x) 。 安装它 yarn add pipey 将其导入到您的文件 import { ...
第10章 Visual C++ 2010 MFC动态函数链接库 434 10.1 动态函数链接库简介 434 10.1.1 什么是动态函数链接库 434 10.1.2 动态函数链接库的优点 435 10.1.3 动态函数链接库的起源 436 10.1.4 动态函数链接库的原理 436...
///下面是功能部分 多次使用的话可以封装成函数,当然参数是上面的DosString #define DOS_CMD (LPTSTR)(LPCTSTR)DosString SECURITY_ATTRIBUTES sa; HANDLE hRead, hWrite; sa.nLength = sizeof(SECURITY_...
易语言PerlEdit编辑器源码,PerlEdit编辑器,配置代码编辑框,获取函数,初始化组件尺寸,加载函数列表,置状态,显示提示列表,取DOS执行结果,开始发送,CreateProcess,CreatePipe,ReadFile,CloseHandle,PeekNamedPipe,...
设置系统用户自动登陆,源码是通过系统核心支持库中系统...主要是演示了易语言API函数CreateProcess,CreatePipe,GetStartupInfo,ReadFile,CloseHandle和注册项的例程。@易语言入门教程-方圆软件工作室-林炳崇。
设置系统用户自动登陆,源码是通过系统核心支持库中系统处理来实现的。主要是演示了易语言API函数CreateProcess,CreatePipe,GetStartupInfo,ReadFile,CloseHandle和注册项的例程。
CreatePipe(&hRead;, &hWrite;, &sa;, 0)) { return ErrorPrompt(); } STARTUPINFO si = { sizeof(si) }; PROCESS_INFORMATION pi; si.hStdError = hWrite; si.hStdOutput = hWrite; si.wShowWindow = SW_...