在Windows 8中执行自动更改已连接的显示

Bja*_*rte 7 c# hardware nvidia batch-file windows-8

精简版

如何自动更改多个显示设置?NVIDIA,3倍监视器(2倍DVI和1倍HDMI),GPU仅支持2个有源监视器.


长版

所以我有一个NVIDIA GeForce GTX 560 Ti可以同时运行两个显示器.它有两个DVI连接和一个HDMI.我经常使用我的两台桌面显示器进行交换,只使用HDMI连接其中一台桌面显示器和电视.

我想使用批处理脚本或其他程序自动执行更改,而不是使用Windows控制面板(控制面板\所有控制面板项目\显示\屏幕分辨率)或NVIDIA控制面板.

我发现在使用一些文档" ,......"等,这并没有在所有的工作.对于我在NVIDIA PDF文档中使用的任何参数,没有任何反应.有没有人有一个有效的例子?我也在Windows 7上试过这个.rundll32.exeNvCpl.dlldtcfg

我曾尝试使用WMI来查看监视器是否存在,但它只显示两个活动监视器.它不显示第三个不活动的监视器.

我试图EnumDisplayDevicesUser32.dll中,但这只是返回两个有源监听.

我怎样才能使这个工作?

我想在C#中使用它,所以我可以使用它来改变音频设备:)

Mit*_*tch 1

虽然这可能无法满足您的要求,但我在使用笔记本电脑为多台显示器供电时确实遇到了这个问题,并且我最终使用了UltraMon中的显示配置文件功能。我从未编写过脚本或使用过他们的 SDK,但我确实知道他们确实支持自动化和 SDK 访问。

注意:我与 UltraMon 没有任何关系,我只是使用了他们的产品并发现它可以满足我的需求。