我想知道为什么 NamedPipes 存在于 .Net 中,如果我有一个应用程序,我想创建某种代理来拦截其与目标服务器的连接,我该如何从中受益。
我想使用 NamedPipes 实现的是创建一个代理,Minecraft
它拦截服务器-客户端连接并打印发送、接收的数据包from
和to
服务器,用于数据包学习目的和乐趣......
[注意] 我只问了一个很宽泛的问题,因为我还没有一个使用 NamedPipes 的项目,而且 MSDN 对其主题的覆盖率非常平庸。
我想知道为什么 NamedPipes 存在于 .Net 中,如果我有一个应用程序,我想创建某种代理来拦截其与目标服务器的连接,我该如何从中受益。
我想使用 NamedPipes 实现的是创建一个代理,Minecraft
它拦截服务器-客户端连接并打印发送、接收的数据包from
和to
服务器,用于数据包学习目的和乐趣......
[注意] 我只问了一个很宽泛的问题,因为我还没有一个使用 NamedPipes 的项目,而且 MSDN 对其主题的覆盖率非常平庸。
命名管道用于同一台机器上的进程间通信。通常每个控制台程序都有 2 个预定义的管道:stdin(可读)和 stdout(可写)。除了它们之外,还可以创建更多管道。
的目的NamedPipeServerStream
是创建一个可供客户端使用的新管道。通常它是在您需要向另一个进程提供一些数据时创建的:
var myInputPipe = new NamedPipeServerStream("myinput",
PipeDirection.Out, 1, PipeTransmissionMode.Byte);
NamedPipeClientStream
当您想要连接到现有管道(通常读取数据)时使用。
在您的上下文中(Minecraft 的代理),如果您想为现有管道创建代理,这些类是适用的;如果您需要创建网络代理,则管道不适合。