web-dev-qa-db-ja.com

Windows 10のすべてのアプリにHIGHDPIAWARE?

私はWindows 10を使用しており、現在、各アプリに具体的に [〜#〜] highdpiaware [〜#〜] (high-にあるレジストリキーのDPIスケーリング)属性:

HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

これらの値:

enter image description here

しかし、私は本当にその機能のために各アプリを指定したくありません。

質問:

すべてのアプリをHIGHDPIAWAREにするにはどうすればよいですか?

2
Royi Namir

できません。古いアプリケーションを変更せずにhigh-dpi対応にすることはできません。これは、新しいhigh-dpi APIを使用するためにアプリが必要になるためです。アプリは、マニフェストファイルまたは一部のAPI呼び出しを介して、高dpiを認識していることを宣言する必要があります。これが、上記のレジストリキーに関するものです。詳細設定はこんな感じ

  • HIGHDPIAWARE:高DPI設定でディスプレイスケーリングを無効にする-スケーリングの実行者:アプリケーション(Win7/10)
  • DPIUNAWARE:スケーリングの実行:アプリケーション(Win10ビルド15002 +)
  • GDIDPISCALING DPIUNAWARE:スケーリングの実行:システム(拡張)(Win10ビルド15002 +)

https://ss64.com/nt/syntax-compatibility.html

実際、*。exeファイルのプロパティを開いた場合、そのキーは[互換性]タブのdpiオーバーライド設定とまったく同じです。

したがって、HIGHDPIAWAREを...\AppCompatFlags\Layersに設定しても、アプリが自動的にhi-dpiに対応するわけではありません。それは、Windowsがアプリがhi-dpi対応で 無効化スケーリング であると考えているようにするだけです。アプリは100%のスケーリングで表示されるため、高dpiディスプレイでは小さくなりますが、結果はよりシャープになります

もちろん 一度に複数のアプリにフラグを設定 することはできますが、これは問題を解決する方法ではありません。すべてのアプリの高dpi設定を上書きすると、実際の高dpi対応アプリが誤動作する可能性があります

も参照してください

2
phuclv