1

Существует проблема с драйверами nvidia и сообщаемым монитором EDID: родное разрешение мониторов составляет 1920x1080, 32 Гбит / с 60 Гц, но по какой-то причине оно отображает только часть всего рабочего стола (overscan / underscan), а изображение размыто, поэтому я создал собственное разрешение 1920x1080, 32 Гбит / с, 59 Гц CVT. -редуцированный банк, который отлично работает.

Проблема заключается в том, что при подключении кабеля HDMI Windows автоматически выбирает неправильное собственное разрешение или нестандартное разрешение. Как установить индивидуальное разрешение по умолчанию? Таким образом, когда компьютер загружается с подключенным монитором HDMI, он по умолчанию принимает пользовательское разрешение.

Или есть команда, которую я могу выполнить, чтобы переключиться на собственное разрешение вместо использования панели управления nvidia? В этом случае есть HDMI-подключенное событие, которое я могу каким-то образом подключить для выполнения этой команды?

Благодарю.

1 ответ1

0

Я нашел API панели управления здесь: http://developer.download.nvidia.com/SDK/9.5/Samples/DEMOS/common/src/NvCpl/docs/NVControlPanel_API.pdf. Следующая команда не работает:

rundll32.exe NvCpl.dll,dtcfg setmode 2 1920 1080 32 59

Это обсуждение показывает, что этот подход больше не поддерживается :(

Решением является создание приложения, которое использует функции NvAPI_DISP_ * для внесения соответствующих изменений.

- NvAPI_DISP_GetTiming() // with NV_TIMING_OVERRIDE_CVT_RB parameter set
- NvAPI_DISP_TryCustomDisplay()
- NvAPI_DISP_SaveCustomDisplay()

Осталось только запустить эту программу при подключении HDMI: Здесь (отсутствует репутация) можно найти GUID класса устройства для графических адаптеров. Затем используйте функцию RegisterDeviceNotification (), чтобы зарегистрироваться для получения уведомления WM_DEVICECHANGE.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .