COMM ポートと通信するプログラムを使用していますが、COMM ポートのメッセージを「傍受」し、さらにそれらのメッセージに対して独自のアクションを実行する別のプログラムを作成しました。これは .NET c# で可能ですか?
4 に答える
興味のあるトラフィックを公開するサードパーティのライブラリ/ツール/製品があります。
これは私がシリアルポートのエミュレーションに使用したものですが、使用できるものを提供していると思います: http://com0com.sourceforge.net/
COMM ポートと通信する最初のプログラムを制御できる場合は、ポートから受信したデータをリモート処理またはその他のタイプの IPC を介して 2 番目のプログラムに渡すようにプログラムを変更しないでください。COMM ポートに接続するプロキシ プログラムを作成し、他の 2 つのプログラムにこのプロキシと通信させて通信を完了させることができればなおさらです。
もう 1 つのアイデアは、着信データのみを盗聴する必要がある場合は、Y ケーブル (スプリッター) を入手して 2 つの COMM ポートに接続し、各プログラムを各 COMM ポートに接続することです。ただし、2 番目のプログラムが送信しようとしていないことを確認する必要があります。場合によっては、RX ピンのみを 2 番目の出力に接続するスプリッタが必要になることがあります。図が必要な場合はお知らせください。
2 COMM をお持ちでない場合は、10 米ドル未満で簡単に USB-シリアル コンバーターを入手できます。
シリアルポートからのトラフィックを傍受することが可能です
ただし、「COMPortSniffer」コントロールはないようです
sysinternals で使用される有効な手法がそこに示されています
Win32プログラミングに依存しているようですが、C#で直接そのようなことが可能だとは思いません