【发布时间】:2023-04-11 03:02:02
【问题描述】:
我正在尝试获取每个屏幕分辨率(例如:1920x1080)和缩放系数(例如:125% 或 120 dpi),而无需在屏幕之间移动应用程序。
我尝试了很多类/方法,但没有一个为我的设置提供正确的结果(Windows 10,主屏幕为 1920x1080 缩放 125%,辅助屏幕(右侧)为 1920x1080 缩放 100%)。
System.Windows.Forms.Screen 给出了这些结果:
- 第一个屏幕的 1920x1080 分辨率(好的)
- 第二个屏幕的分辨率为 2400x1350(不行,应该是 1920x1080)
http://www.wpftutorial.net/ScreenResolutions.html 的结果相同
使用 PInvoke,shcore.dll 的 GetDpiForMonitor() 会给出以下结果:
- 第一个屏幕 120 (ok)
- 第二屏为 120(不行,应该是 96)
您知道我该如何做到这一点并获得正确的结果吗?
【问题讨论】:
标签: c# screen-resolution dpi multiscreen