当前位置:首页 科普知识 CreateNamedPipe

CreateNamedPipe

发布时间:2023-09-14 02:15:45

CreateNamedPipe创建一个命名管道。返回的句柄由管道的服务器端使用。

CreateNamedPipe介绍

CreateNamedPipe创建一个命名管道。返回的句柄由管道的服务器端使用。

CreateNamedPipe

CreateNamedPipe简介

CreateNamedPipe

VB声明

Declare Function CreateNamedPipe Lib "kernel32" Alias "CreateNamedPipeA" (ByVal lpName As String, ByVal dwOpenMode As Long, ByVal dwPipeMode As Long, ByVal nMaxInstances As Long, ByVal nOutBufferSize As Long, ByVal nInBufferSize As Long, ByVal nDefaultTimeOut As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long

说明

返回值

Long,如执行成功,返回管道的句柄。INVALID_HANDLE_VALUE表示失败。会设置GetLastError

参数表

参数 类型及说明

lpName String,指定管道名,采用的形式是:.管道管道名。最多可达256个字符的长度,而且不用区分大小写。如果存在指定名字的一个管道,则创建那个管道的一个新实例

dwOpenMode Long,下述常数组的一个组合

下述常数之一(对于管道的所有实例都要一样):

PIPE_ACCESS_DUPLEX 管道是双向的

PIPE_ACCESS_INBOUND 数据从客户端流到服务器端

PIPE_ACCESS_OUTBOUND 数据从服务器端流到客户端

下述常数的任意组合

CreateNamedPipe

FILE_FLAG_WRITE_THROUGH 在网络中建立的字节型管道内,强迫数据在每次读写操作的时候通过网络传输。否则传输就可能延迟

FILE_FLAG_OVERLAPPED 允许(但不要求)用这个管道进行异步(重叠式)操作

常数WRITE_DAC, WRITE_OWNER 和 ACCESS_ SYSTEM_SECURITY提供了附加的安全选项

dwPipeMode Long,下述常数组的一个组合:

下述常数之一(管道的所有实例都必须指定相同的常数)

PIPE_TYPE_BYTE 数据作为一个连续的字节数据流写入管道

PIPE_TYPE_MESSAGE 数据用数据块(名为“消息”或“报文”)的形式写入管道

下述常数之一:

PIPE_READMODE_BYTE 数据以单独字节的形式从管道中读出

PIPE_READMODE_MESSAGE 数据以名为“消息”的数据块形式从管道中读出(要求指定PIPE_TYPE_MESSAGE)

下述常数之一:

PIPE_WAIT 同步操作在等待的时候挂起线程

PIPE_NOWAIT(不推荐!) 同步操作立即返回。这样可为异步传输提供一种落后的实现方法,已由Win32的重叠式传输机制取代了

nMaxInstances Long,这个管道能够创建的最大实例数量。必须是1到常数PIPE_UNLIMITED_INSTANCES间的一个值。它对于管道的所有实例来说都应是相同的

nOutBufferSize Long,建议的输出缓冲区长度;零表示用默认设置

CreateNamedPipe

nInBufferSize Long,建议的输入缓冲区长度;零表示用默认设置

nDefaultTimeOut Long,管道的默认等待超时。对一个管道的所有实例来说都应相同

lpSecurityAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或者传递零值(将参数声明为ByVal As Long,并传递零值),以便使用不允许继承的一个默认描述符

CreateNamedPipe适用平台

Windows NT

温馨提示:
本文【CreateNamedPipe】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6