命名管道

命名管道是一个命名的单向或双工管道,用于管道服务器与一个或多个管道客户端之间的通信。 命名管道的所有实例共享相同的管道名称,但每个实例都有自己的缓冲区和句柄,并为客户端/服务器通信提供单独的管道。 实例的使用使多个管道客户端能够同时使用同一命名管道。

任何进程都可以访问命名管道(受安全检查的约束)使命名管道成为相关或无关进程之间的简单通信形式。

任何进程都可以充当服务器和客户端,使对等通信成为可能。 如此处所示,术语管道服务器是指创建命名管道的进程,术语管道客户端引用连接到命名管道实例的进程。 用于实例化命名管道的服务器端函数是 CreateNamedPipe。 用于接受连接的服务器端函数是 ConnectNamedPipe。 客户端进程使用 CreateFileCallNamedPipe 函数连接到命名管道。

命名管道可用于在同一台计算机上的进程之间或在网络上不同计算机上的进程之间提供通信。 如果服务器服务正在运行,则所有命名管道都可以远程访问。 如果只想在本地使用命名管道,请拒绝访问 NT AUTHORITY\NETWORK 或切换到本地 RPC。

有关详情,请参阅以下主题: