Windows 10/11でHDRのオンオフを切り替えたい場合、標準のショートカットキー(Win+Alt+B)では全てのモニタに適用されます。メインモニタだけを切り替えたい場合は、PowerShellやコマンドラインを使った方法で制御することが可能です。本記事では、メインモニタ専用のHDR切り替えスクリプトの作成方法を解説します。
HDR設定の仕組みと制御方法
WindowsではHDR設定はレジストリやWMI、Display Config APIを介して管理されています。モニタごとの設定は通常GUIからは変更できませんが、DisplayConfigやDPI関連のAPIを用いることで個別制御が可能です。
PowerShellではDisplayConfig APIを呼び出して、特定のモニタIDにのみHDR設定を適用することができます。
PowerShellスクリプトの作成例
1. Get-CimInstanceやGet-WmiObjectで接続されているディスプレイ情報を取得
2. メインモニタを識別するためにPrimaryモニタの情報をフィルタ
3. Set-DisplayHDRを呼び出して、特定モニタのHDRをオン/オフ
例:Set-DisplayHDR -MonitorId $primaryMonitorId -Enable $true
注意点と互換性
HDR切り替えはモニタやドライバに依存するため、全ての機種で動作するわけではありません。また、管理者権限でスクリプトを実行する必要がある場合があります。
不具合を防ぐため、事前にモニタの情報を確認し、テスト環境で動作確認を行うことを推奨します。
自動化とショートカット化
作成したPowerShellスクリプトは、タスクスケジューラやショートカットキーに割り当てることで、ワンクリックでメインモニタのHDRを切り替え可能です。
例えば、デスクトップショートカットにpowershell.exe -File "C:\Scripts\ToggleHDR.ps1"を設定することで、即座に切り替えられます。
まとめ
WindowsでメインモニタだけHDRを切り替えるには、PowerShellでDisplayConfig APIやWMIを使用してモニタIDを指定する方法が有効です。スクリプト化してショートカット化することで、全モニタに影響させずにHDRを個別に制御できます。


コメント