Я хочу получить информацию о каждом дисплее, как показано в Windows настройках дисплея. Я использую следующий код для получения информации о каждом мониторе:
int ENUM_CURRENT_SETTINGS = -1;
foreach (Screen screen in Screen.AllScreens)
{
DEVMODE dm = new DEVMODE();
dm.dmSize = (short)Marshal.SizeOf(typeof(DEVMODE));
EnumDisplaySettings(screen.DeviceName, ENUM_CURRENT_SETTINGS, ref dm);
Console.WriteLine($"Device: {screen.DeviceName}");
Console.WriteLine($"Real Resolution: {dm.dmPelsWidth}x{dm.dmPelsHeight}");
Console.WriteLine($"Virtual Resolution: {screen.Bounds.Width}x{screen.Bounds.Height}");
Console.WriteLine();
}
Результат выглядит следующим образом:
Но экран имя не совпадает с отображаемым в Windows настройках дисплея. Мои настройки отображения Windows выглядят так:
Мой вопрос заключается в том, как мой код может получить ту же информацию, которая показана в Windows настройки дисплея?