THIS PROJECT IS CURRENTLY OUTDATED AND MAY NOT WORK AS EXPECTED. IT IS ALSO NOT UNDER ACTIVE DEVELOPMENT OR MAINTENANCE ANYMORE.
Please consider checking out my other project that should do what this project intended to do, even better: https://github.com/falahati/HeliosDisplayManagement
NVidia Surround Toggler is a simple tool/program that tries to fill the main gap left by NVIDIA in their surround technology's user experience by letting the user toggle between the two modes (Surround and Extended) as fast and with less pain as possible.
The program's main feature is saving both surround and extended settings and the possibility to run a program in a specific display mode.
Inspired by "Unknown-One"'s "NVSToggle" (Even using the same icon)
To download the latest version of this program, take a look at the releases page.
--OR--
You can always donate your time by contributing to the project or by introducing it to others.
You can toggle surround mode by right-clicking on the desktop and selecting the 'NVIDIA Surround' option. You also can force a program to start in a specific mode by right-clicking on the executable file and following the same instructions.
If your NVIDIA Control Panel's language is not the same as your Windows language, you may need to manually specify the correct language of the NVIDIA Control Panel in the 'Options' page for the program to function properly. This page also allows you to reset the saved Extended and Surround settings.
It is also possible to create advanced shortcuts using the program's 'Tools' page. This is useful for games and programs that cannot be started directly; like Steam games and other game launchers.
This program supports most (if not all) of the 'NVIDIA Control Panel' languages. Still, if you have a problem with one specific language, open an Issue and help us fix it in the next release.
Unfortunately, this program is not compatible with SLI setups YET! We try our best to add this functionality to the program as soon as possible.
The real reason for writing and sharing this code was to see how much we can use the Microsoft UIAutomation framework and its extending frameworks ( in this case the White framework ) to automate a simple procedure as clean as possible.
As you can see in the code, we soon found both frameworks very weak and decided to use WinAPI to make the process smoother. This is a fact that the UIAutomation framework can help a lot of folks to achieve automation of simple procedures, but it also has a lot of disadvantages especially in terms of performance, user experience and possibilities we can expect of it.
Please note that this program created for research proposes only and there is no guarantee for it to work or function properly. The only testing machine was an x64 Windows 10 system with the latest version of the NVidia Graphic Driver and Control Panel (v355.60) installed. But you can report issues and I will try my best to solve them.
Copyright (C) 2015-2017 Soroush Falahati
This project is licensed under the GNU Lesser General Public License ("LGPL") and therefore can be used in closed source or commercial projects. However, any commit or change to the main code must be public and there should be a read me file along with the DLL clarifying the license and its terms as part of your project as well as a hyperlink to this repository. Read more about LGPL.