从IDXGIOutput1获取用户友好的监视器名称

时间:2013-10-25 00:32:01

标签: windows directx

我有IDXGIOutput1引用显示输出。但是,我似乎无法找到将其转换为监视器面向用户的名称的方法,例如,屏幕分辨率(我在Windows 7上)。到目前为止,我已经尝试this回答(并检查了引用的其他几个WMI属性)和this问题和答案中的代码。但到目前为止我得到的最好的是“Generic PnP Monitor”。我的屏幕分辨率给出的名称是“Acer V243H”。

1 个答案:

答案 0 :(得分:0)

您可以使用每台显示器的EDID(扩展显示识别数据)来获取每台显示器的供应商和型号。这是操作系统获取连接到系统的每个监视器的所有信息的地方。

您可以按照本文解释如何在Windows 7中获取EDID数据结构:Win32 code to get EDID in Windows XP/7

然后根据EDID format,您要查找的信息将位于偏移54和125之间的描述符块之一。

EDID Manager工具可以帮助您在一个漂亮的GUI中遍历EDID,这样您就可以准确地看到所需信息在EDID结构中的位置。