2013-08-21 93 views
2

我想知道爲什麼.Net中存在NamedPipes,如果我有一個應用程序需要創建某種代理來截取其與目標服務器的連接,我將如何從中受益。什麼是NamedPipeServerStream和NamedPipeClientStream(s)?

我想用了NamedPipes正在爲Minecraft代理攔截服務器 - 客戶端連接並打印出發送的數據包來實現什麼,收到fromto爲分組學習目的和樂趣過於服務器...

[注]我只問了一個很寬泛的問題,因爲我還沒有一個項目使用NamedPipes,其主題的MSDN覆蓋面非常平庸。

回答

0

命名管道存在於同一臺機器上的進程間通信。通常每個控制檯程序都有2個預定義的管道:stdin(可讀)和stdout(可寫)。除此之外,還可以創建更多管道。

NamedPipeServerStream的用途是創建一個新的管道,供客戶使用。通常當你需要提供一些數據到另一個進程創建它:當你想連接到現有管道

var myInputPipe = new NamedPipeServerStream("myinput", 
    PipeDirection.Out, 1, PipeTransmissionMode.Byte); 

NamedPipeClientStream使用(usualy讀取數據)。

在您的上下文中(Minecraft的代理),如果您要爲現有管道創建代理,這些類是適用的;如果您需要創建網絡代理,則管道不適用。

相關問題