c++ - 如何在 Windows 中检测显示器是否为宽屏

标签 c++ windows winapi widescreen

我需要一种在 Windows 中以编程方式检测显示器是否宽的方法。

GetSystemMetrics 返回桌面的大小,这种方法可行,但如果用户使用的是宽屏显示器,比如 1024x768,我会错误地将其归类为非宽屏。

GetDeviceCaps 与 HORZRES 和 VERTRES 有类似的问题,当在宽显示器中使用非宽分辨率时,甚至 HORZSIZE 和 VERTSIZE 也会给出不正确的结果。

有什么方法可以可靠地检测到这一点吗?

最佳答案

您可能可以通过EDID 获得实际物理尺寸.看这里:How to obtain the correct physical size of the monitor?

关于c++ - 如何在 Windows 中检测显示器是否为宽屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1478003/

相关文章:

C++根据模板参数值更改成员函数定义

java - 从windows服务器获取文件到linux服务器

c++ - 如何确定哪个 Windows DLL 正在用于函数调用?

windows - 设置为 diff-highlight 的 Git 寻呼机在 Windows 10 中不起作用

c++ - ExtTextOut 文本不断闪烁,并且在设定的时间后文本恢复为默认字体

c++ - 为什么 win32 消息循环在线程化时停止工作?

c++ - 如何编写一个 C++ 例程来检查我按下了键盘上的哪个键,以便我可以单独处理每个按键?

c++ - 在 Winsock.h 中获取未声明的标识符错误

c++ - 从内核模式向 Windows 服务发送事件

c - 在 win32api 中直接读写硬盘,如 biosdisk 或 ms-dos 中的 absread