4

有谁知道如何在 C 或 C++ 中获取连接的显示器序列号?我找到了一些代码,但它们是用我不明白的 vbs 编写的。我需要一些用 C 或 C++ 编写的示例代码。我知道序列号是从 EDID 读取的,但不幸的是我不知道如何 :( 有人可以帮我吗?

谢谢

更新:我也需要监视器类型,但这也可以从 EDID 以某种方式读取

4

3 回答 3

2

是一个希望更易读的 VB 代码的链接。他所做的基本上是在注册表中查找 Windows 存储显示器的 EDID 数据的位置。它位于 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\...\Device 参数

在维基百科文章中,您可以找到有关EDID 格式的信息

于 2011-09-01T11:53:55.057 回答
2

这不是您正在寻找的东西,但一个好的起点应该是GetMonitorInfo

我认为在 msdn 页面中挖掘更多内容应该可以为您提供所需的一切。MSDN 实际上是寻找 C/C++ Windows API 函数的好地方。

于 2011-09-01T11:55:38.790 回答
0

这个DisplayDetails.GetMonitorDetails() 代码对我来说非常有用。我在测试中发现戴尔显示器可靠地返回了 S/N 信息,但是我尝试过的所有非戴尔显示器(其他 3 个品牌)都没有。

于 2012-04-12T14:26:30.770 回答