通过Win32 API或NVidia API启用/禁用多个监视器?

Sof*_*Kng 6 winapi nvidia monitor windows-7

我正在尝试编写一个小实用程序,它将使用我的nVidia显卡在Windows 7下启用/禁用显示器.(即"将桌面扩展到此显示器上"等)

原因是我的nVidia Geforce GTX 480有三个输出(2x DVI,1x Mini-HDMI),但只允许两个在任何给定时间处于活动状态,因此我需要在我想切换到电视时启用/禁用显示器(HDMI )显示.

Win32 API函数EnumDisplayDevices无法正常工作,因为它不显示已禁用的监视器.

nVidia提供了一个API(NVAPI),并具有枚举所有监视器(甚至是已禁用的监视器)的功能,您可以启用监视器,但不能禁用监视器.(我指的是NvAPI_CreateDisplayFromUnAttachedDisplay)

UltraMon似乎已经找到了如何执行此操作,但我找不到任何信息.

Dav*_*ony 0

我认为如果三分之二的显示器已连接,则将检测不到第三个。该卡将停止侦听新硬件。您必须手动取出电缆,然后将新电缆插入不同的端口。除非有办法“弹出”连接,类似于 USB 存储设备。