マイコン開発していると、いまだにシリアルポートってのは現役で、しかも昔と違ってUSB-シリアル変換が出回ったおかげで大量のポートがPCに存在したりします。
そして、また厄介なことに、USB-シリアル変換デバイスの中には、COM番号をどんどん増やしてくれるやからがいるので、COM番号をいちいちデバイスマネージャなどで確認してからじゃないと通信できなく、とっても不便です。
あと、.netのSerialPortクラスだと、ポート番号は取得できるものの、ポートの説明を取得するのはもう一手間踏まないとできないため、結局なんのポートか調べるのにデバイスマネージャ開いたり…
で、そのへんが面倒だったので、タスクトレイに常駐して、マウスクリックで最新のシリアルポートの状態を取得するプログラムを作ってみてTwitterでつぶやいたら、思ってたよりも受けが良かったのでブログにもおいておきます。
見た目はこんな感じ。
ただし、ろくにデバッグしてないので、デバッグに協力してやろう、ぐらいのつもりの人だけお試しお願いします。
普段、プログラムの配布なんかしてないので、MSのSmartScreenの警告が出たりするらしいです…
ネットワークアクセスとかは必要有りません。
■できること
・PCに接続されているすべてのシリアルポートの情報を一覧表示できる。
・メインウィンドウを閉じてもタスクトレイに常駐できる
・タスクトレイアイコンをクリックするだけで簡易情報が表示できる
・起動オプションを与えることで、メインウィンドウを表示せずに常駐させることもできる
・起動オプションを与えることで、外部のコンソールソフトと連携できる。具体的にはPutty・TeraTerm・Acknowrichに対応。連携すると、簡易情報表示のリンクをクリックすることで、そのポートでコンソールを開くことができる。
・デバイスマネージャでシリアルポートに表示されないけど、実際はシリアルポートとして操作するモデムデバイスの情報も表示できる。ATコマンドを手で打ちたい時とか便利。
■表示内容
・ポート番号
・ポートの利用状況(Open/Close)
・デバイス名称(USB-シリアル変換がどこ製かとか)
・メーカ名
・デバイス詳細(デバイス名称と同じ場合がほとんど)
■SerialPortInfo 仕様
動作環境 : .Net Framework 4.5が入っているWindowsPC
スキャン速度 : 1ポートあたり100msecくらい
■最新のバージョン
2016/05/27 00:13ビルド ダウンロード
・Teraterm連携モードでボーレートが正しく設定できなくなっていた問題を修正
・最小化してもタスクリストに表示されていた問題を修正
■過去のバージョン
2015/06/18 23:58ビルド ダウンロード
・ボーレート設定を空白のままキャンセルした時に例外を投げて落ちるバグを修正
・詳細不明デバイスが複数あっても検索できるように修正
2015/06/18 21:36ビルド ダウンロード
・開けるターミナルの種類を追加
・汎用連携オプションを追加
・初期ボーレートを設定できるように修正
2015/06/18 05:56ビルド ダウンロード
・検出したポートを一部のターミナルソフトで開ける機能を追加
2015/06/16 03:46ビルド ダウンロード
・一部のモデムデバイスが検出できていなかったので修正
・謎のデバイスが見つかった時に、メッセージボックスではなく、一覧に表示するように変更
2015/06/12 02:32ビルド ダウンロード
・ポップアップを等幅フォントに変更
・デバイスマネージャを起動するボタンを追加
2015/06/11 23:11ビルド ダウンロード
・デバイス名に「COM」が含まれないものも検出できるように修正。
2015/06/11 15:09ビルド ダウンロード
・実行オプションを与えると、起動時から最小化できるようにしました。
2015/06/11 13:26ビルド ダウンロード
もしくは
https://dl.dropboxusercontent.com/u/1020337/SerialPortInfo.zip
こちら。
バグ報告や機能追加の要望とか、ここのコメントなりTwitterのメンションなりで書いてもらえるとありがたいです。
■既知のバグ
・スキャン中に終了させると例外を吐くことがある
・HA10mini基板セット
・HA10mini終段基板
・HA10miniハイパワーキット
・HPA&Analog vol.6冊子版
・同人誌DL委託
・同人誌DL委託(旧サークル名)
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |