Short version
How do I automate changing multiple display settings? NVIDIA, 3x monitors (2x DVI and 1x HDMI), GPU only supports 2 active monitors.
Long version
So I have a NVIDIA GeForce GTX 560 Ti
which can run two displays simultaneously. It has two DVI connections and one HDMI. I often swap from using my two desktop monitors and connect only one of the desktop monitors plus my TV using HDMI.
I would like to automate the change back and forward using a batch script or other program instead of using the windows control panel (Control Panel\All Control Panel Items\Display\Screen Resolution) or the NVIDIA Control Panel.
I found some documentation on using "rundll32.exe
, NvCpl.dll
, dtcfg
...." etc. This did not work at all. Nothing happens for any parameters I use from the NVIDIA PDF documentation. Does anyone have an example that works? I have tried this on Windows 7 as well.
I have tried to use WMI to see if the monitor is there, but it only shows the two active monitors. It does not show the third inactive monitor.
I have tried EnumDisplayDevices
from User32.dll, but this only returns the two active monitors.
How can I get this working?
I would like to get this working in C#, so I can use it with changing audio device as well :)
Press the Windows Key + P , which will bring up the display settings. Because you can't see anything on your monitor use the left or right arrow key and press enter (Repeat this step). Each time you use the Windows Key + P combination, press the left or right arrow key once and hit enter.
Windows 8.1 allows you to divide higher resolution monitors into up to three panes, mixing and matching Metro apps and Desktop screens in various combinations, as shown below. However, only one instance of each Metro app can run at a time, regardless of which screen it is on.
Although this is may not meet your requirements, I did run in to this problem when using my laptop to power several monitors, and I ended up using the Display Profiles feature in UltraMon. I never scripted it or used their SDK, but I do know that they do support automation and SDK access.
Note: I am in no way affiliated with UltraMon, I just used their product and found it to meet my needs.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With