2

我知道我可以用它GetProcessDpiAwareness()来检查特定进程的 dpi 意识。但是,这仅在 Windows 8.1 及更高版本中受支持。有什么方法可以在此之前查询进程的 dpi 意识吗?我找不到任何关于它的信息。

特别是我想知道该进程是否运行[x] Disable display scaling on high DPI settings(至少可以从 Windows 7.

4

1 回答 1

5

当您在 Windows 7(和 8)上选中“禁用高 DPI 设置时的显示缩放”复选框时,该设置存储在注册表中,通过创建一个密钥,该密钥的名称是下可执行文件的完全限定路径HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers和内容这是:

  • HIGHDPIAWARE启用显示缩放
  • ~ HIGHDPIAWARE显式禁用显示缩放

因此,您可以简单地查找该注册表项,以查看是否为该进程启用或禁用了显示缩放。

于 2018-09-10T16:09:18.037 回答