c++ - Windows 8 之前的 GetProcessDpiAwareness()

标签 c++ winapi windows-7 dpi dpi-aware

我知道我可以使用 GetProcessDpiAwareness() 来检查特定进程的 dpi 感知。但是,这仅从 Windows 8.1 向上支持。有没有办法查询在此之前进程的 dpi 感知? 我找不到任何关于它的信息。

特别是我想知道该进程是否在 [x] Disable display scaling on high DPI settings(至少在 Windows 7 中可用。

最佳答案

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

  • HIGHDPIAWARE 启用显示缩放
  • ~ HIGHDPIAWARE 明确禁用显示缩放

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

关于c++ - Windows 8 之前的 GetProcessDpiAwareness(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52261598/

相关文章:

java - 如何使用 java 代码和 AT 命令从 sim dongle 读取短信?

c++ - 在多态指针 vector 中搜索特定类型及其子类型

c++ - 使用 C++ 和 USB 库从 USB 网络摄像头捕获视频

C++多线程Windows GUI(访问表单)

c++ - windows 命令提示符中的伪环境

delphi - 壁纸更换

batch-file - 如何使用箭头键作为批处理文件中的输入

c++ - 在非多线程时避免 std::mutex 的成本?

c++ - setstylesheet 不单独设置属性

c++ - 使已经绘制的内容透明?