糟屋郡はいいぞ

ツイッターで書くには文字数が足りないやつ。Amazonのアソシエイトとして、KasuyaMofuは適格販売により収入を得ています。

Stream Deckでディスプレイの枚数を変更するボタンを作って便利につかっている

tl;dr

  • MultiMonitorToolを使う
  • 全てのモニターに対してdisable/enableを掛けた後 /LoadConfig する

モチベーション

私の机の上には、画面デバイスとして。以下のような配置で2枚のディスプレイ(1,2)と1枚の液晶タブレット(3)がある。これらのデバイスを、WindowsMac(1,2)、そしてLinux(1)でも利用したい。

そのため、Macを起動した場合は1,2を、Linuxを起動した場合は1を、Windows上で無効にすることで、その後、ディスプレイの自動ソース選択機能によって、MacLinuxの画面が表示されるようになる。

f:id:KasuyaMofu:20210731111016p:plain

ただ、画面を有効に、または無効にする場合、Windows上では「デスクトップjをこのディスプレイに拡張する」や、「このディスプレイの接続を切断する」といった操作が必要になり、非常に面倒である。

そこで、Stream Deckのボタン1発で、3つの設定に相互に変更する方法を模索した。

  • 1,2,3が有効な状態
  • 2,3 が有効な状態
  • 3 が有効な状態

f:id:KasuyaMofu:20210731111540p:plain

方法

結論としては、以下の2つの操作が必要だった。

  • 各モニターをdisable / enable する
  • ConfigLoadする

C:\Programs\multimonitortool-x64\ 配下にインストールしている場合は、以下のようなコマンドを Stream Deck の 「開く」 で App/ファイル に入力する。

C:\Programs\multimonitortool-x64\MultiMonitorTool.exe /disable 1
C:\Programs\multimonitortool-x64\MultiMonitorTool.exe /enable 2
C:\Programs\multimonitortool-x64\MultiMonitorTool.exe /enable 3
C:\Programs\multimonitortool-x64\MultiMonitorTool.exe /LoadConfig "C:\Programs\multimonitortool-x64\2-monitors.cfg"

f:id:KasuyaMofu:20210731111700p:plain

詰まったところ

SaveConfig / LoadConfig のみで可能かと思っていたが、これはうまく行かなかった。特に、ディスプレイの disable / enable がうまく行かないようだった。