Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winapi 通过Win32 API或NVidia API启用/禁用多个监视器?_Winapi_Windows 7_Monitor_Nvidia - Fatal编程技术网

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

Winapi 通过Win32 API或NVidia API启用/禁用多个监视器?,winapi,windows-7,monitor,nvidia,Winapi,Windows 7,Monitor,Nvidia,我正在尝试编写一个小实用程序,它将使用我的nVidia图形卡在Windows 7下启用/禁用监视器。(即“将桌面扩展到此显示器上”等) 原因是我的nVidia Geforce GTX 480有三个输出(2x DVI,1x Mini HDMI),但在任何给定时间只允许两个输出处于活动状态,因此我需要在切换到电视(HDMI)显示器时启用/禁用监视器 Win32 API函数EnumDisplayDevices不工作,因为它不显示禁用的监视器 nVidia提供了一个API(NVAPI),并具有枚举所有监

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

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

Win32 API函数EnumDisplayDevices不工作,因为它不显示禁用的监视器

nVidia提供了一个API(NVAPI),并具有枚举所有监控器(甚至是禁用的监控器)的函数,您可以启用监控器,但不能禁用监控器。(我指的是NvAPI\u CreateDisplayFromUnAttachedDisplay)


UltraMon似乎已经找到了执行此操作的方法,但我找不到任何信息。

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

Hi!你找到解决办法了吗?我正在尝试制作类似的应用程序,用于从android设备远程管理监视器布局。如果EnumDisplayDevice()未返回禁用的监视器,SetupDi*函数应为您提供必要的设备名称,包括PNP设备ID