命名管道
命名管道 是一种命名的单向管道或双工管道,用于管道服务器与一个或多个管道客户端之间的通信。 命名管道的所有实例共享相同的管道名称,但每个实例都有自己的缓冲区和句柄,并为客户端/服务器通信提供单独的管道。 实例的使用使多个管道客户端能够同时使用同一命名管道。
任何进程都可以访问命名管道(受安全检查的约束)使命名管道成为相关或无关进程之间的简单通信形式。
任何进程都可以充当服务器和客户端,使对等通信成为可能。 如此处所述,术语管道服务器是指创建命名管道的进程,术语管道客户端引用连接到命名管道实例的进程。 用于实例化命名管道的服务器端函数 CreateNamedPipe。 用于接受连接的服务器端函数 ConnectNamedPipe。 客户端进程使用 CreateFile 或 CallNamedPipe 函数连接到命名管道。
命名管道可用于在同一台计算机上的进程之间或在网络中不同计算机上的进程之间提供通信。 如果服务器服务正在运行,则所有命名管道都可以远程访问。 如果打算仅在本地使用命名管道,请拒绝对 NT AUTHORITY\NETWORK 的访问或切换到本地 RPC。
有关详细信息,请参阅以下主题:
- 管道名称
- 命名管道打开模式
- 命名管道类型、读取和等待模式
- 命名管道实例
- 命名管道作
- 同步和重叠输入和输出
- 命名管道安全和访问权限
- 模拟命名管道客户端
- 使用管道