MultiMonitorTool
Back in January, I was very pleased because I had finally found some open source software, DisplayMagician, which allowed me to quickly and easily alter my display profile and run specific games and applications on my second monitor. Prior to this I would find that some programs just wouldn’t stay put, once they were dragged or otherwise cajoled to display on the monitor of my choice. They would continuously snap back to the primary display, regardless of my actions. DisplayMagician solved this issue and did so with aplomb. Or it did, until last weekend when I upgraded my PC from Windows 10 to 11. Then it stopped working. I therefore did some digging online and it became apparent that this is a known issue that is currently being addressed by its creator, Terry McDonald.
I hope all goes well with Mr McDonald’s troubleshooting but as there is no timeframe for a fix, I found myself today back where I had started at the beginning of the year, with regard to looking for a suitable tool to change primary monitors on the fly. Which then led me to discover MultiMonitorTool by Nirsoft (Nir Sofer). According to the developer “MultiMonitorTool is a small tool that allows you to do some actions related to working with multiple monitors. With MultiMonitorTool, you can disable/enable monitors, set the primary monitor, save and load the configuration of all monitors, and move windows from one monitor to another. You can do these actions from the user interface or from command-line, without displaying the user interface”. It is also free (although you can make a donation) and is regularly updated.
I am happy to report that MultiMonitorTool works and works well. However, having previously used software for this task that simply required me to click on an icon, I found swapping display profiles from a command line, or clicking on the MultiMonitorTool application window somewhat fiddly. Like so many PC users, I like my desktop and icons laid out just so and I’m fussy about how I do things. Therefore, I decided to write a batch file that could toggle between making monitor 1 and monitor 2 the primary display. It took me a while to remember how to do this but I got there eventually. I then created a shortcut but pinning it to my taskbar proved problematic. Once I got around this, I then encountered an error when running the batch file via the shortcut. Possibly due to permissions and the fact that the MultiMonitorTool was outside of the system32 directory. My simple task was getting steadily more complex.
I next decided to create a script to run the batch file for me and then pin a shortcut to the script to my taskbar. However, my memory of .vbs files is worse than my memory of .bat files. So this time I turned to Google Gemini for assistance which produced a simple script according to my needs. All that was required after this, was a custom icon for the .vbs file shortcut. I possibly spent more time perusing icon files than I did actually resolving the problem. Needless to say, I now have a convenient icon on my taskbar that I can use to change my primary display designation, prior to launching certain games and applications. It works quickly and with minimal hassle. Furthermore, I saved myself $40 by not buying the Steam version of DisplayFusion which does the same thing as MultiMonitorTool.