在 win32 应用程序中动态设置 DPI 感知级别

Setting DPI awareness level dynamically in win32 Application

我正在寻找任何方法来动态设置 DPI 感知级别(基于用户输入)。我遇到了 this.

它建议我应该使用 setProcessDpiAwareness 函数来设置意识级别。但此 api 调用仅受 windows 8.1 预览版支持。是否有任何其他方法可以用来动态设置从 windows 7 开始支持的 Dpi 感知级别?

提前致谢。

在 Windows 8.1 中每个显示器的 DPI 意识出现之前,有 SetProcessDPIAware,从 Vista 开始支持。

但是,令我印象深刻的是,您可能希望在运行时做出此决定。最佳做法是将应用程序设计为具有高 DPI 感知能力,并将这种感知能力写入应用程序清单中。