要件:コンピュータ内の2つのプログラムは一方通行通信を必要とし、ソケットやHttpメソッドを使いたくありません。ソケットはポートを受信し、ポート競合が発生した場合は解決し、再接続メカニズムも考慮する必要があります。Httpメソッドは非効率的で、TCPリンクの確立や破壊を頻繁に招きます。 さらに、AnonymousPipeの匿名パイプラインは親子プロセスを必要とし、それを考慮していません。
ネットワーク間プロセス通信に名前付きパイプラインを使用する:ハイパーリンクのログインが見えます。
名前付きパイプラインは、パイプラインサーバーと1つ以上のパイプラインクライアント間のプロセス間通信を提供します。 これらは、ローカルマシン上でプロセス間通信を提供する匿名パイプラインよりも多くの機能を提供します。 ネームドパイプラインは、ネットワークや複数のサーバーインスタンス間での全二重通信、メッセージベースの通信、クライアントエミュレーションをサポートし、接続プロセスがリモートサーバー上で独自の権限セットを使用できるようにします。
まずレンダリングを見てみましょう。
PowerShellを使って、開いている名前付きパイプラインを確認してください (ブラウザを使って閲覧することも可能です)、コマンドは以下の通りです:
.NET 6 をコマンドパイプライン NamedPipeServerStream サーバーとして使う場合、コードは以下の通りです:
.NET Frameworkプログラムは、以下のコードでNamedPipeClientStreamクライアントとしてデータを送信します。
ソースコードダウンロード:
観光客の皆さん、この投稿の隠された内容を見たい方は、どうぞ 答える
|