スポンサーリンク

使っていないのに「使用中」になっているCOMポートを「未使用」にする

Windows関連
スポンサーリンク

Windows10にしてからUSB-RS232C 変換ケーブルでCOMポートを使用しているのですが、PCに何も接続していないのに「使用中」になっているCOMポートがあります。
新たに割り振られるポート番号が二桁になってきたので、使っていないCOMポートを「未使用」に変更してみました。

久しぶりにUSB-RS232C 変換ケーブルをUSBに差し込んでソフトウェアのCOMの設定をしようとしたら、今差し込んだUSB-RS232C 変換ケーブルがCOM12に割り当てられました。

なぜ?と思ってデバイスマネージャーを確認するとWindowsが使用しているCOM3しかありません。
使用しているUSB-RS232C 変換ケーブルは3本。
COMポートを使用するソフトウェアを多数使用しているので、使うソフトウェアごとにCOMポートが割り当てられてるのかな?
理由はともかく、解放しなくては。

ということで、解放の手順です。

まずはレジストリエディタを起動します。
レジストリエディタが起動したら次の場所を開きます。

HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > COM Name Arbiter

画面右側に表示されている「COM DB」の値に使用、未使用の情報が入っています。

「COM DB」をダブルクリックして開きます。

開いた画面に英数2文字1組の文字列(HEX)で表示され、左上から2組目まででCOM1~16までを表します。
1組目がCOM1~8まで、2組目がCOM9~16までを表します。
これを修正すれば使用中を未使用に変更できます。

変更の際は、この文字列(HEX)を0と1の文字列(BIN)に変換する必要があります。

変換にはこちらの 2進数、8進数、10進数、16進数相互変換ツール を利用させていただきました。

私の場合を例にすると、16進数の欄に「FE07」入力して「変換」ボタンを押します。

2進数の欄の数字をテキストエディタ等に貼り付け、8桁で区切ります。

数字は上の図のようになっています。未使用にしたいCOMポートを「1」から「0」に変更します。

私の場合はCOM3以外を未使用にしたいので、「00000100 00000000」とします。

区切った部分を取り除いて「0000010000000000」とし、2進数、8進数、10進数、16進数相互変換ツールの2進数欄に入力、変換ボタンを押します。

変換結果が「400」となりましたが、先頭の「0」が消えてる(英数2文字1組にする)ので「0400」とします。
これをレジストリエディタの先ほどの画面に入力します。

変更を保存して終了です。

なお、変更は事項される方の責任においておこなってくださいね。

コメント