Включить / отключить несколько мониторов через Win32 API или NVidia API? - PullRequest
6 голосов
/ 11 июля 2011

Я пытаюсь написать небольшую утилиту, которая будет включать / отключать мониторы под Windows 7 с моей видеокартой nVidia.(т. е. «Расширение рабочего стола на этот монитор» и т. д.)

Причина в том, что у моего nVidia Geforce GTX 480 есть три выхода (2x DVI, 1x Mini-HDMI), но только два из них могут быть активны на любомМне нужно время, чтобы включить / отключить мониторы, когда я хочу переключиться на дисплей телевизора (HDMI).

Функция Win32 API EnumDisplayDevices не работает, поскольку она не отображает отключенные мониторы.

nVidia предоставляет API (NVAPI) и имеет функции для перечисления всех мониторов (даже отключенных), и вы можете включить монитор, но вы не можете отключить монитор.(Я имею в виду NvAPI_CreateDisplayFromUnAttachedDisplay)

Кажется, UltraMon выяснил, как это сделать, но я не могу найти никакой информации.

1 Ответ

0 голосов
/ 07 мая 2014

Я думаю, что если 2 из трех дисплеев уже подключены, 3-й не будет обнаружен. карта перестанет слушать новое оборудование. Вы должны вручную вынуть кабель, а затем вставить новый в другой порт. если нет способа «извлечь» соединение, похожее на USB-накопитель.

...