Как получить серийный номер монитора? - PullRequest
4 голосов
/ 01 сентября 2011

Кто-нибудь знает, как получить серийный номер подключенных мониторов на C или C ++? Я нашел некоторый код, но они написаны в VBS, которые я не понимаю. Мне нужен пример кода, написанного на C или C ++. Я знаю, что серийные номера считываются из EDID, но, к сожалению, я не знаю как :( Может кто-нибудь мне помочь?

Спасибо

Обновление: мне тоже нужен тип мониторов, но это тоже можно как-то прочитать из EDID

Ответы [ 3 ]

2 голосов
/ 01 сентября 2011

Это не совсем то, что вы ищете, но хорошая отправная точка должна быть GetMonitorInfo

Я думаю, копание еще на страницах MSDN должно дать вам все, что вам нужно.MSDN - отличное место для поиска функций C / C ++ Windows API.

2 голосов
/ 01 сентября 2011

Здесь - ссылка на более читаемый код VB. То, что он в основном делает, ищет в реестре, где окна хранят данные EDID монитора. Он находится по адресу HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Enum \ DISPLAY \ ... \ Параметры устройства

В статье в Википедии вы можете найти информацию о формате EDID

0 голосов
/ 12 апреля 2012

Этот DisplayDetails.GetMonitorDetails () код отлично работал для меня.В ходе тестирования я обнаружил, что мониторы Dell надежно возвращают информацию о S / N, однако все дисплеи сторонних производителей, которые я пробовал (3 других бренда), этого не сделали.

...