GetNamedPipeInfo函数检索有关指定命名管道的信息。
BOOL GetNamedPipeInfo(
HANDLE 【hNamedPipe】, | //命名管道的句柄 |
LPDWORD 【的lpFlags】, | //指示管道类型的标志的地址 |
LPDWORD 【lpOutBufferSize】, | //管道输出缓冲区的大小(以字节为单位)的地址 |
LPDWORD 【lpInBufferSize】, | //管道输入缓冲区的大小(以字节为单位)的地址 |
LPDWORD 【lpMaxInstances】 | //最大地址管道实例数 |
); |
参数
【hNamedPipe】
标识命名的管道实例。句柄必须具有对命名管道的GENERIC_READ访问权限。
【的lpFlags】
指向一个32位变量,指示命名管道的类型。如果不需要此信息,此参数可以为NULL。否则,请使用以下值:
值 | 含义 |
PIPE_CLIENT_END | 句柄指的是命名管道实例的客户端。这是默认值。 |
PIPE_SERVER_END | 句柄指的是命名管道实例的服务器端。如果未指定此值,则该句柄引用命名管道实例的客户机端。 |
PIPE_TYPE_BYTE | 命名管道是一个字节管道。这是默认值。 |
PIPE_TYPE_MESSAGE | 命名管道是消息管道。如果未指定此值,则管道为字节管道。 |
【lpOutBufferSize】
指向接收传出数据缓冲区大小(以字节为单位)的32位变量。如果缓冲区大小为零,则根据需要分配缓冲区。如果不需要此信息,此参数可以为NULL。
【lpInBufferSize】
指向接收数据缓冲区大小(以字节为单位)的32位变量。如果缓冲区大小为零,则根据需要分配缓冲区。如果不需要此信息,此参数可以为NULL。
【lpMaxInstances】
指向一个32位变量,它接收可以创建的最大数量的管道实例。如果变量设置为PIPE_UNLIMITED_INSTANCES,则可以创建的管道实例的数量仅受系统资源的可用性的限制。如果不需要此信息,此参数可以为NULL。
返回值
如果函数成功,返回值不为零。
如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.
也可以看看