Как я могу заставить любое разрешение экрана / время, которое я хочу?
У меня возникают проблемы с поиском способа принудительно установить любое разрешение экрана / время, которое я хочу в моей программе C#. Я использую Windows 7 с графической картой GeForce 210. Мой текущий метод достижения этих пользовательских разрешений - это использование графического интерфейса драйвера для ручного добавления пользовательских разрешений, а затем использование вызовов Windows для изменения этих разрешений, но мне нужен способ добавлять новые настраиваемые разрешения в режиме реального времени. Я посмотрел в NVAPI, но я не смог найти способ сделать это. Я также изучил инструмент командной строки для графического драйвера, но не смог заставить его работать. Мое последнее средство - переписать значения в реестре, но я бы очень хотел этого избежать. Я готов использовать другой язык программирования или сторонний инструмент, если я могу вызывать его из командной строки через свою программу. Может кто-то указать мне верное направление?
Заранее спасибо.
Обновление (16.08.2011): я работал над этой проблемой с NVIDIA, и они предоставляют мне расширенный NVAPI, который позволит мне воссоздать функциональность их драйвера. Они также подтвердили, что базовая версия NVAPI, которую они предоставляют, не будет этого делать.
2 ответа
Я смог решить эту проблему с помощью NDA-версии NVAPI. Это все еще не было тривиальным, но все инструменты есть.
Вы можете попробовать использовать ChangeDisplaySettings
Я не уверен, что он будет иметь все параметры, предоставляемые панелью nvidia, но, конечно, основы, такие как разрешение, частота обновления, ориентация экрана и т. Д. Я сам использовал его в прошлом для динамического изменения ориентации экрана (повернуть на пейзаж / портрет) одним нажатием кнопки.