Серийный номер монитора как узнать
Перейти к содержимому

Серийный номер монитора как узнать

  • автор:

Как узнать серийный номер монитора Windows 10?

Самый простой и быстрый способ определить, что у вас за монитор — это найти наклейку на корпусе устройства. Если на лицевой стороне ни наклейки, ни надписи нет, то в большинстве случаев она есть с задней стороны устройства, рядом со входами VGA (D-Sub), HDMI и др.Jan 5, 2020

Серийный номер — ряд символов, расположенный после «SN:». Этикетка размещена на задней стороне устройства рядом с панелью разъемов. Серийный номер — ряд символов, расположенный непосредственно под штрих-кодом после «SN:». Этикетки расположены на задней части корпуса монитора (a) и на упаковочной коробке (b).

В открывшейся командной строке введите команду wmic bios get serialnumber и нажмите Enter. В результате вы увидите серийный номер вашего компьютера. Также вы можете ввести команду wmic csproduct get identifyingnumber после чего нажать Enter, данная команда тоже высветит серийный вашего устройства.

Серийный номер — ряд символов, расположенный после слов «Serial No:». Этикетка находится на нижней части корпуса ноутбука. (15 символов) Серийный номер — ряд символов, расположенный непосредственно под штрих-кодом.

После скачивания в разделе «Меню» (в левой части открывшегося окна) нажать на пункт «Отображение» – «Монитор». Данные о свойствах корпуса (имя, ID, тип, модель, серийный номер и др.) высветятся по правую сторону экрана.

Как узнать информацию о мониторе?

Определение модели монитора Самый простой и быстрый способ определить, что у вас за монитор — это найти наклейку на корпусе устройства. Если на лицевой стороне ни наклейки, ни надписи нет, то в большинстве случаев она есть с задней стороны устройства, рядом со входами VGA (D-Sub), HDMI и др.

Как узнать серийный номер монитора Windows 10? Ответы пользователей

Для этого кликаем правой кнопкой мыши на иконку «Мой компьютер» (в Windows 10 «Этот компьютер»). Далее находим «Свойства» и заходим. Появилось .

Чтобы узнать номер модели вашего экрана, необходимо достать его из ноутбука и проверить заднюю панель ЖК-экрана. Из 99% экранов, представленных сегодня на рынке .

Образ мышления: Assembler, Как узнать модель и серийный номер монитора, отзывы, EDID — Extended Display Identification Data — стандарт .

Определить модель и серийный номер мониторов в системе CMD/BAT Решение . Windows Batch fileВыделить код. 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Самый простой и быстрый способ определить, что у вас за монитор — это найти наклейку на корпусе устройства. Если на лицевой стороне ни наклейки ни надписи нет, .

Получение модели и серийного номера монитора из Extended Display Identification Data (EDID)

Как узнать номер модели ПК при помощи сведений о системе · Откройте меню «Пуск». · Наберите в поиске «сведения о системе». · Нажмите на верхней .

Как програмно определить порядковый номер монитора и попутно координаты этого экрана. System.Windows.Forms.Screen.AllScreens не подошол если .

В win10 в реестре убрали подветвь Control, по наличию которой можно определить активный (подключенный сейчас) монитор, и можно только по .

Определить модель и серийный номер мониторов в системе

Есть bat файл который определяет модель и серийный номер мониторов в системе:

Результат выводится в формате:
Monitor 1: HP 24o
Monitor 2: CNK8431JHS
Monitor 3: HP 24o
Monitor 4: CNK8451D1Z
HP 24o;CNK8431JHS;HP 24o;CNK8451D1Z;

а нужно вывести:
Monitor 1: HP 24o (CNK8431JHS)
Monitor 2: HP 24o (CNK8451D1Z)
HP 24o (CNK8431JHS);HP 24o (CNK8451D1Z);

Сбор информации о системе (серийный номер НЖМД)
Здравствуйте! У меня ОС Win 7 x64 При запуске в командной строке вот такого кода wmic path.

Сма hansa модель pg4510a212a, серийный номер 03144920529108, Нужна прошивка
День добрый, уважаемые коллеги! Проблема типичная- коротыш по питанию, проц mc9s08aw32 внешней.

Определить заводской серийный номер винчестера
как можно определить заводской серийный номер винчестера для delphi

Не получается определить серийный номер флешки
Пытаюсь определить номер флешки, результат пустая строка (как на консоли так и в файле). .

Лучший ответСообщение было отмечено Matan! как решение

Решение

Лучший ответСообщение было отмечено Matan! как решение

Решение

Добавлено через 4 часа 26 минут
Как видишь, вся твоя задача решается в две строки и без уродливой магии батников.

Определить аппаратный серийный номер флешки
Как определить аппаратный серийный номер флешки, именно НЕ серийный номер тома. В интернете масса.

Как определить тип и серийный номер процессора?
Требуется определить тип и серийный номер процессора на машине пользователя. Как это сделать?

FUNC Master-01: как определить серийный номер?
На корпусе есть на тыльной стороне надписи: FUNC MASTER-01 Сделано в Китае Последняя строка.

Как определить серийный номер данного вставленного CD?
Как определить серийный номер данного вставленного CD? Заранее спасибо.

Определить серийный номер подключенного внешнего носителя информации
Защита программ от несанкционированной эксплуатации за счет привязки к носителю информации а).

Справочник по C#

Если вы столкнулись с проблемой и хотите поделиться своим опытом, знаниями или у вас есть интересная статья с иностранного сайта, предложение новой темы, статью которую Вы хотите видеть в ближайшем будущем, расскажите нам об этом и мы обязательно поделимся этими знаниями со всеми. Возможно, для других ваши знания, опыт и советы окажутся очень ценными и помогут вовремя найти правильный выход или не совершить ошибок.
Так же если у вас есть предложение о сотрудничестве, пожелания, указать на нарушения сайта или просто сказать слова благодарности, все это вы можете сделать через форму обратной связи. Читать дальше

Серийный номер монитора как узнать

Как узнать модель и серийный номер монитора

Как узнать модель и серийный номер монитора

EDID — Extended Display Identification Data — стандарт формата данных VESA, расширенные данные идентификации дисплея. Эта информация передается монитором или телевизором на устройство, которое генерирует видео сигнал. EDID содержит базовую информацию о мониторе и его возможностях, включая информацию о производителе, максимальном размере, цветовых характеристиках, заводских таймингах, границах частотного диапазона и другие технические данные. Кроме этого в EDID записаны строки, содержащие модель монитора и его серийный номер. Вот они-то нас и интересуют.

После подключения и установки драйверов монитора в систему, в реестре для него формируется соответствующая запись. Нам остается только ее найти, прочитать и извлечь нужные данные. В интернетах можно найти официальный мануал VESA по стандарту EDID.

VESA Enhanced EDID Standard (ENG)

В документе почти сотня страниц, много теории и всякой технической заумности, поскольку применение EDID очень широкое. Быстро найти нужную информацию, мягко говоря, проблематично. В английском варианте статьи на Википедии эта информация разложена более понятным образом. Итак, в структуре EDID в байтах 54-125 должны быть записаны 4 блока идентификаторов. Структура каждого идентификатора описана там же. Забегая вперед отмечу, что слово «должны» некоторые производители понимают по-своему. Например, для моего маленького китайского монитора серийный номер вообще не узнать, так как в EDID записаны два блока таймингов, диапазоны работы монитора и название модели. При парсинге такие ситуации придется учитывать.

Переходим к программированию. Несколько структур, часть из которых вы уже видели в статье про выключение мониторов. Там же описан и принцип работы с мониторами, как получить их список, как получить хэндл и прочее. Настоятельно рекомендую ознакомиться, чтобы у вас не возникало вопросов, а мне не пришлось дублировать теоретические выкладки.

  1. struct PHYSICAL_MONITOR
  2. hPhysicalMonitor dd ?
  3. szPhysicalMonitorDescription rw 128
  4. ends
  5. struct MONITORINFOEX
  6. cbSize dd ?
  7. rcMonitor RECT
  8. rcWork RECT
  9. dwFlags dd ?
  10. szDevice rb 32
  11. ends
  12. struct DISPLAY_DEVICE
  13. cb dd ?
  14. DeviceName rb 32
  15. DeviceString rb 128
  16. StateFlags dd ?
  17. DeviceID rb 128
  18. DeviceKey rb 128
  19. ends
  1. ;———————————————————
  2. ; Callback-функция перебора мониторов
  3. ;———————————————————
  4. proc MonitorEnumProc hMonitor : DWORD , hdc : DWORD , lpRect : DWORD , lParam : DWORD
  5. locals
  6. ; Количество мониторов
  7. num dd ?
  8. ; Массив PHYSICAL_MONITOR
  9. hMonArray dd ?
  10. MonArray dd ?
  11. Manufacturer dd ?
  12. CurrentValue dd ?
  13. MaximumValue dd ?
  14. CurrentS dd ?
  15. MaximumS dd ?
  16. ResS dd ?
  17. endl
  18. ; Получить количество физических мониторов
  19. leaeax , [ num ]
  20. invoke GetNumberOfPhysicalMonitorsFromHMONITOR , [ hMonitor ] , eax
  21. ; Физических мониторов нет
  22. cmp [ num ] , 0
  23. je . loc_ret
  24. ; Зарезервировать память под массив PHYSICAL_MONITOR
  25. moveax , [ num ]
  26. imuleax , sizeof . PHYSICAL_MONITOR
  27. invoke GlobalAlloc , GMEM_MOVEABLE + GMEM_DDESHARE , eax
  28. mov [ hMonArray ] , eax
  29. invoke GlobalLock , [ hMonArray ]
  30. mov [ MonArray ] , eax
  31. ; Получить информацию о всех физических мониторах
  32. invoke GetPhysicalMonitorsFromHMONITOR , [ hMonitor ] , [ num ] , [ MonArray ]
  33. ; Выключить все мониторы поочередно
  34. movecx , [ num ]
  35. movesi , [ MonArray ]
  36. . loc_monitors_loop :
  37. pushecx
  38. pushesi
  39. ; Информация о мониторе
  40. mov [ minfo . cbSize ] , sizeof . MONITORINFOEX
  41. invoke GetMonitorInfo , [ hMonitor ] , minfo
  42. mov [ dds . cb ] , sizeof . DISPLAY_DEVICE
  43. invoke EnumDisplayDevices , minfo . szDevice , NULL , dds , 0
  44. invoke RtlZeroMemory , edidmodel , 256
  45. invoke RtlZeroMemory , edidsn , 256
  46. invoke RtlZeroMemory , regstr , 256
  47. ; Сформировать название ключа реестра
  48. ; SYSTEM\CurrentControlSet\Enum\DISPLAY\
  49. invoke lstrcpy , regstr , szReg0
  50. movedi , regstr
  51. invoke lstrlen , edi
  52. addedi , eax
  53. ; Дописать к нему подстроку из DeviceID
  54. movesi , dds . DeviceID
  55. @ @ :
  56. lodsb
  57. oral , al
  58. jz . loc_no_devid
  59. cmpal , ‘\’
  60. jne @ b
  61. @ @ :
  62. lodsb
  63. oral , al
  64. jz . loc_no_devid
  65. stosb
  66. cmpal , ‘\’
  67. jne @ b
  68. ; Открыть ветку реестра
  69. ; HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\PHL0904\
  70. invoke RegOpenKey , HKEY_LOCAL_MACHINE , regstr , hKey
  71. oreax , eax
  72. ; Открыть ключ не получилось, пропускаем
  73. jnz . loc_no_devid
  74. ; Перебрать все дочерние ключи, начиная с 0
  75. mov [ dKeysIndex ] , 0
  76. . loc_scan_keys_monitor :
  77. ; Просканировать все ключи
  78. invoke RegEnumKey , [ hKey ] , [ dKeysIndex ] , buff , tmp
  79. oreax , eax
  80. jnz . loc_no_more_keys
  81. ; Сформировать название ключа реестра
  82. ; SYSTEM\CurrentControlSet\Enum\DISPLAY\PHL0904\
  83. invoke lstrcpy , buff2 , regstr
  84. ; 5&217f22ba&0&UID1048848
  85. invoke lstrcat , buff2 , buff
  86. ; \Device Parameters
  87. invoke lstrcat , buff2 , szReg1
  88. ; Открыть параметр EDID в ключе реестра
  89. ; HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\PHL0904\
  90. ; 5&217f22ba&0&UID1048848\Device Parameters
  91. invoke RegOpenKeyEx , HKEY_LOCAL_MACHINE , buff2 , 0 , KEY_READ , hSubKey
  92. oreax , eax
  93. ; Такого параметра нет, проверить следующий ключ
  94. jnz . loc_next_key
  95. ; Прочитать EDID
  96. invoke RtlZeroMemory , edid , 500h
  97. mov [ tmp ] , 500h
  98. invoke RegQueryValueEx , [ hSubKey ] , szReg2 , 0 , 0 , edid , tmp
  99. oreax , eax
  100. jnz . loc_no_edid
  101. ; Найти в EDID строки Serial Number и Model
  102. xorecx , ecx
  103. ; Начинаем разбор с 72-го байта
  104. movebx , 48h
  105. . loc_scan_edid :
  106. movesi , ebx
  107. addesi , edid
  108. movbyte [ esi + 18 ] , 0
  109. ; Serial Number
  110. cmpdword [ esi ] , 0xFF000000
  111. jne . loc_not_edidsn
  112. addesi , 5
  113. movedi , edidsn
  114. . loc_move_edidsn :
  115. lodsb
  116. cmpal , 20h
  117. jb . loc_next_edid
  118. stosb
  119. jmp . loc_move_edidsn
  120. . loc_not_edidsn :
  121. ; Model
  122. cmpdword [ esi ] , 0xFC000000
  123. jne . loc_next_edid
  124. addesi , 5
  125. movedi , edidmodel
  126. . loc_move_edidmodel :
  127. lodsb
  128. cmpal , 20h
  129. jb . loc_next_edid
  130. stosb
  131. jmp . loc_move_edidmodel
  132. . loc_next_edid :
  133. addebx , 18
  134. incecx
  135. cmpecx , 2
  136. jbe . loc_scan_edid
  137. . loc_no_edid :
  138. ; Закрыть ключ
  139. invoke RegCloseKey , [ hSubKey ]
  140. . loc_next_key :
  141. ; Следующий индекс
  142. inc [ dKeysIndex ]
  143. jmp . loc_scan_keys_monitor
  144. . loc_no_more_keys :
  145. invoke RegCloseKey , [ hKey ]
  146. . loc_no_devid :
  147. ; edidsn -> Serial Number, если есть
  148. ; edidmodel -> Model
  149. ; или пустые строки, если записи о мониторе в реестре нет
  150. invoke wsprintf , buff , mask , edidmodel , edidsn
  151. addesp , 16
  152. invoke MessageBox , 0 , buff , dds . DeviceName , 0
  153. . loc_next_monitor :
  154. ; Следующая запись из массива PHYSICAL_MONITOR
  155. popesi
  156. addesi , sizeof . PHYSICAL_MONITOR
  157. popecx
  158. subecx , 1
  159. jnz . loc_monitors_loop
  160. ; Прибраться за собой
  161. invoke DestroyPhysicalMonitors , [ num ] , [ MonArray ]
  162. ; Освободить память
  163. invoke GlobalUnlock , [ hMonArray ]
  164. invoke GlobalFree , [ hMonArray ]
  165. . loc_ret :
  166. ; Продолжаем обработку
  167. moveax , TRUE
  168. ret
  169. endp

Теперь подробно, что тут происходит. Получив хэндл монитора, получаем информацию о нем при помощи функции GetMonitorInfo и EnumDisplayDevices. В отличие от устройств ввода, системное имя монитора возвращается в урезанном варианте, например, MONITOR\PHL0904\{4d36e96e-e325-11ce-bfc1-08002be10318}\0007. Из этой строки можно извлечь только класс устройства и Vendor ID. Этого достаточно, чтобы сформировать название ключа реестра вида HKLM\SYSTEM\CurrentControlSet\Enum\DISPLAY\PHL0904. После этого надо перебрать все вложенные ключи с уникальным идентификатором устройства, так как для одного устройства может быть создано несколько таких записей. Например, при подключении монитора к разным видеовыходам. В каждом вложенном ключе надо будет проверить наличие вложенного ключа Device Parameters с параметром EDID, перебирая их поочередно. Таким образом, в конечном итоге ключ реестра будет иметь вид HKLM\SYSTEM\CurrentControlSet\Enum\DISPLAY\PHL0904\5&217f22ba&0&UID1048848\Device Parameters или что-то подобное в зависимости от вашего железа.

Прочитав из реестра значение параметра EDID, мы получим EDID монитора. Он хранится в бинарном виде, так что приступаем к парсингу. В соответствии со стандартом, четыре 18-байтных идентификатора находятся в EDID с 54-го байта. Последовательность и назначение блоков ничем не регламентировано, поэтому надо проверять все четыре. Структура текстовых блоков простейшая: три нулевых байта, байт описания идентификатора, снова нулевой байт и затем ASCII-строка, которая заканчивается или на последнем байте идентификатора, или на любом непечатном символе с кодом меньше 20h. Таким образом максимальная длина строки серийного номера или названия модели монитора может быть 13 символов. Байт описания идентификатора 0FFh соответствует серийному номеру монитора, байт 0FCh — названию модели.

Как я говорил выше, в зависимости от производителя монитора, искомых строк в EDID может вообще не оказаться, или может быть только название модели, с этим я уже столкнулся на практике. Также выяснилось, что при подключении одного и того же монитора к разным компьютерам, получаемые значения его серийного номера могут отличаться. Я не могу даже предположить, с чем это связано. Ну и теоретически, раз уж EDID хранится локально в реестре, то его можно модифицировать, изменив какие-нибудь байты и подкорректировав контрольную сумму. Так что безоговорочно доверять данным EDID не надо.

Скриншот программы Phoenix EDID Designer

Скриншот программы Phoenix EDID Designer

Для более детального изучения структуры EDID, а также для редактирования имеющихся значений, можно воспользоваться малюсенькой утилитой Phoenix EDID Designer. Ее разработка прекращена, офсайт недоступен, последнюю версию я выложил сюда.

Phoenix EDID Designer 1.3

В приложении пример программы с исходным текстом, которая выводит название модели и серийный номер для каждого подключенного монитора.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *