いろいろ調べてみましたが、Windows 7 64 ビットで動作する、シリアル ポートを監視 (他のアプリケーションから開いたりブロックしたりせずに) する無料の方法はまだ見つかっていません。
Microsoft 独自の Portmon も機能しません。互換モードでの実行について言及している投稿がいくつかありますが、私の環境では機能しません。Windows XP Service Pack 2 および 3 (ドロップダウン リストで使用できる唯一のもの) の互換モードを試しましたが、どちらも機能しません。
そうですね、Windows 7 64 ビットのシリアル ポートを監視する方法はあるのでしょうか?
答え1
試してみた高度なシリアルポートモニター「スパイ」モードはまさにあなたが望むことを実行します。
試用のみ無料です。ただし、永続的な解決策には料金を支払う必要があります。
答え2
以前、あなたとまったく同じ状況にあったときに私が使用した回避策は、32 ビット VM を使用することです。
これは最高のソリューションではありませんが、機能し、コストもかかりません (VM 環境のセットアップに関連するコストを除く)。
答え3
別のコンピュータをお持ちの場合は、POSIX OSを実行して、socat
トラフィックをログに記録しながら、あるポートから別のポートにデータを「パイプ」します。これは基本的にハードウェアベースのソリューションに似ていますが、特別なものではなく汎用ハードウェアを使用します。たとえば、次のようになります。
sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr
このプログラムの本当に素晴らしいところは、何に接続できるかに関して非常に柔軟性が高いことです。TCP/IP ソケット、ファイル/ストリームなどを使用したり、ボーレートを変更したり、行末を変更したりできます。紹介記事 (2009 年ですが、今でも役立ちます) が利用可能です。ここ。
編集:明確にするために、次のようなハードウェア構成ではなく、
Main computer serial port <--> Device serial port
次のようになります:
Main computer serial port <--> sniffer computer serial port 1 Device serial port <--> sniffer computer serial port 2