Wie erhalte ich die Anzeigenamen mehrerer Monitore mit der Win32-API?

Ich habe zwei Monitore an meinen Windows-PC angeschlossen - einer ist ein normaler Monitor und der andere ist ein Projektor. Da Windows nicht immer den einen oder anderen Monitor als primären Monitor festlegt (zum Teil, weil beim Booten von Windows nicht immer beide aktiviert sind), muss programmgesteuert ermittelt werden, welcher Monitor welcher ist.

In der Systemsteuerung werden die Namen der Monitore als "HP 2159" (der normale Monitor) und "PROJEKTOR" in dem Bildschirm angezeigt, in dem Sie den primären Monitor auswählen. Das sind die Informationen, die ich in meinem Programm erhalten möchte.

Ich kann die richtige Win32-API-Funktion für diese Informationen nicht finden. Ich habe beides versuchtEnumDisplayDevices undEnumDisplayMontiors. Beide geben nur "DISPLAY1" und "DISPLAY2" als Gerätenamen an. Womit sollte ich die Informationen zu "HP 2159" und "PROJECTOR" oder etwas Ähnlichem abrufen?

UPDATE: Hier ist der Python-Code, den ich verwende:

>>> 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)}

Antworten auf die Frage(1)

Ihre Antwort auf die Frage