Как получить отображаемые имена нескольких мониторов с помощью Win32 API?

К моему компьютеру с Windows подключено два монитора - один обычный монитор, а другой проектор. Поскольку Windows не всегда назначает один или другой в качестве основного монитора (отчасти потому, что они не всегда оба при загрузке Windows), мне нужно программно определить, какой монитор какой.

Панель управления отображает названия мониторов как «HP 2159» (обычный монитор) и «PROJECTOR» на экране, где вы выбираете, какой монитор является основным. Это информация, которую я хочу получить в своей программе.

Я не могу найти подходящую функцию Win32 API для этой информации. Я пробовал обаEnumDisplayDevices а такжеEnumDisplayMontiors, Оба просто дают «DISPLAY1» и «DISPLAY2» в качестве имен устройств. Что я должен использовать, чтобы получить информацию "HP 2159" и "PROJECTOR" или что-то аналогичное?

ОБНОВЛЕНИЕ: Вот код Python, который я использую:

>>> import win32api
>>> monitors = win32api.EnumDisplayMonitors()
>>> win32api.GetMonitorInfo(monitors[0][0])
{'Device': '\\\\.\\DISPLAY1', 'Work': (0, 0, 1920, 1080), 'Flags': 1, 'Monitor': (0, 0, 1920, 1080)}
>>> win32api.GetMonitorInfo(monitors[1][0])
{'Device': '\\\\.\\DISPLAY2', 'Work': (1920, 0, 3360, 1080), 'Flags': 0, 'Monitor': (1920, 0, 3360, 1080)}

Ответы на вопрос(1)

Ваш ответ на вопрос