外部アプリケーションを起動し、その出力をキャプチャします。 Diagnostics.Process
とそのOutputStream
を使用するとかなり簡単です。C#/。NETでバイナリプロセスの出力をキャプチャする方法
しかし、プロセスが私はしませんが、テキストStreamWriter
その基礎となる生のバイナリストリームを取得する方法として、私はStream
としてキャプチャする必要バイナリデータを、生成していますか?
myapplication | socat stdin tcp-connect:localhost:12345
そして、私のコードでは、私が作成し、TCPソケットに聞く:
現在、私は次のようになり、バッチファイルを起動して、それをハック。このハックはうまくいくものの、少し醜いので、私は外部プロセスを直接使用することを好みます。
よりに似ていますが、より深い、あなたが名前付きパイプを使用することができ
しかし、パイプを使用するように子プロセスを変更する必要があります。そうしないと、パイプを子の標準出力ハンドルとして渡すためにp/invoke 'CreateProcess'が必要になります。 –