如何以编程方式更改第三台显示器

当我使用笔记本电脑时,我使用了3台显示器:

  1. 笔记本电脑显示
  2. 第二台显示器(通过VGA连接)
  3. 电视机(通过HDMI连接)

我的显卡不支持3台显示器,所以我不断地从2台切换到3台:当我在电脑上时,我使用第二台显示器,当我想看一些电影等等时,我使用第三台显示器。

我目前必须转到屏幕分辨率 ,select未使用的显示器,然后select将桌面扩展到此显示器

有什么办法可以自动化吗?

有没有任何命令行工具,或任何Windows API,可以做到这一点?

编辑:
显示改变似乎做我所需要的,但问题是,它只检测工作监视器。 第三个监视器(目前不在使用中)没有被检测到,所以我不能附加它。

Solutions Collecting From Web of "如何以编程方式更改第三台显示器"

DisplaySwitch.exe上的一点RE显示它调用

SetDisplayConfig(0, NULL, NULL, NULL, 0x888) 

将其设置为在我的电脑上扩展。

从那里,有一点挖到我明显的SetDisplayConfig文件,也是这个SO页面的一些示例代码,查询您当前的显示状态,并添加实际的标志来改变它们,如果你想这样做。

我回答了一个类似的问题 ,建议尝试使用UltraMon或使用他们的SDK,但是您也可以直接使用ChangeDisplaySettingsEx命中Win32 API。 另一位用户Sai则给出了一个使用该功能的例子 。