ディスプレイ入力切替プログラム"MonitorSelector"

 MonitorSelectorは、接続しているディスプレイ(モニター)の入力切替を行うWindows コマンドライン・プログラムです。

起動方法 

コマンドプロンプトやコンソールを起動してコマンドを実行します。

MonitorSelector.exe [サブコマンド [オプション]] | [-? | --version]
MonitorSelectorは引数をつけずに起動すると、認識しているディスプレイの一覧を表示します。
“-?”でヘルプ、“--version”でバージョン番号を表示します。
以下のサブコマンドを引数で指定することで動作を指定することができます。各サブコマンドには、アルファベット1文字の省略形があります。
 
サブコマンド 省略形 動作
Monitors [ディスプレイ番号] m ディスプレイの一覧、または特定のディスプレイの情報を表示
List [ディスプレイ番号] l ディスプレイの入力コネクタ一覧を表示
Select ディスプレイ番号 コネクタ番号 s 指定ディスプレイ番号の入力コネクタを指定番号に切替
Input [ディスプレイ番号] i ディスプレイの入力コネクタの状態を表示
Info f 接続しているディスプレイの情報を表示
VesaInputList vesa VESAで定義されている入力コネクタ番号の一覧を表示

ディスプレイ(モニタ)には、1から始まるモニタ番号を指定します。これは、Windowsのモニタ番号と一致しています(設定 ⇒ システム ⇒ ディスプレイ)。
コネクタには、コネクタ番号(Listサブコマンドで表示される)を指定します。コネクタ番号の指定範囲は1から18まで。指定できる番号は0と255を除くVesaInputListサブコマンドで表示された値だけです。

使い方

Monitors、List、Input、Infoを使って、対象のモニタ番号と切り替え先コネクタ番号を調べます。

Selectサブコマンドでモニタのコネクタを切り替えます。切り替えると、コマンドを実行しているPCとの接続が失われるため、制御ができなくなる機種があります。
Inputサブコマンドで現在の入力コネクタとしてゼロが返る機種は、選択中の入力コネクタを判別できません。ただし、接続していることは認識できます。

ダウンロード

MonitorSelector v0.1.2.0-Beta Windows x64,.NET 6.0アプリケーション。ZIP圧縮

※実行には、.NET 6以上のランタイムが必要になります。

注意

  • コマンドの利用はご自身のリスクで行ってください。どのような結果になっても作者は一切保証しません
  • 基本的に、モニターがWindowsに報告した情報をベースにしています。このため、実際のコネクタと情報が一致しない機種があります。そのほか、VCPが報告しないコネクタを持つ機種もあります
  • このため、Selectサブコマンドでは、すべてのコネクタ番号(VesaInputListで表示できる)を指定できますが、存在しないコネクタに切り替えたときの動作は保証できません
  • WindowsからのVCP操作や存在しないコネクタへの切り替えはモニタを不安定にさせることがあります。その結果については何も保証できません。モニタの電源オンオフで回復する場合もあります
  • 変換コネクタやGPUドライバの実装などにより、VCP(Virtual Control Panel) / MCCS (Monitor Control Command Set)を持つモニタであっても、VCPにアクセスできないことがあります。

    参考文献
    Monitor Control Command Set - Wikipedia
    Display Data Channel - Wikipedia

  • 一部のモニターは、現在選択されている入力コネクタを正しく応答しないことがあります。「不明」または「接続中」といった情報しか得られないモニタがあります
  • MonitorSelectorを実行しているマシンが接続している入力コネクタが選択されていないとモニターから情報を取得あるいはコマンドを送ることができないモニタがあります
  • 信号がないと、自動的に信号のあるコネクタに切り替える機能を持つモニタもあり、コマンドによるコネクタ切り替えのあとすぐに切り替わってしまうことがあります

0 件のコメント:

コメントを投稿