[Update on 2018-08-31: The instructions below are probably not useful anymore after several Windows 10 or other software updates. Things look much better nowadays, even though many software still have problems with differing font scaling factors. I still feel sorry for the many developers out there who apparently don’t have sufficient possibilities to test software quality before releasing.]
I have a laptop with a 14″ screen and resolution of 2560×1440. It means that I have to run it with 175% font scaling on Windows 10 to actually have usable controls. However, many applications still cannot scale properly on those displays, so they show tiny fonts and other visual problems.
What makes it more complicated, the situation is even worse when you connect an external monitor (or projector) and you have different font scaling setting on that. I have a portable LCD monitor (Lenovo ThinkVision LT1421) that frequently travels with me on the road, and also at home office as I don’t have a desk dedicated for remote working. This 14″ display is only 1366×768, so I have 100% font scaling on that.
Dragging well-behaving windows like Explorer or Firefox from screen to another works fine, the windows scale automatically and nicely.
Some other software are particularly incompetent in this same scenario. I have here two examples, and what is even better, I also have ideas how to fix them while waiting for the manufacturers to fix their software.
In addition to online meetings, this is also used by various presentations and webinars, like the venerable webinars by Ivan Pepelnjak. GoToMeeting window can be moved to the second monitor, but the window is so huge that I need to downsize the window. This downsizing affects the image quality of the presentation so the content looks awful (imagine a stamp-sized “low-res” slide enlarged to fill the screen). Also, I cannot make the window fullscreen on the second monitor, it goes fullscreen to the first monitor only.
The fix: You have to adjust the compatibility settings of g2mui.exe. For simplicity, first uninstall GoToMeeting. This is done to ensure you edit the correct file because otherwise your computer possibly has many versions of the software (even though Programs and Features only showed one, I had about 7 versions installed) and you don’t know, which one is used (not necessarily the latest, I noticed). Then install GoToMeeting by whatever method you have, by attending (and closing) a session or having an installer somewhere. (Just reserve some 15 minutes before your next Ivan’s webinar and do these steps.) After that, go to folder C:\Users\yourusername\AppData\Local\Citrix\GoToMeeting. You should find a folder with version number string, 6634 in my case, only this one because the previous uninstall step removed all the versions. Open the folder, locate g2mui.exe and open the Properties. In the Compatibility tab, check “Disable display scaling on high DPI settings” and apply the settings. Note: I had to go to the “Change settings for all users” button and change it there, to get the setting actually stay enabled. So after closing the Properties window go there again and ensure that the setting is still enabled, whatever it finally takes.
Testing: Go to your favorite webinar and see that now the GoToMeeting window controls are tiny on the first screen. But what is better, you can now see actual and high-quality content on both screens as you wish, and even in fullscreen if desired. Great success!
Skype for Business
The Skype for Business window cannot scale properly by default when moving from a monitor to another. You could think that operating system from Microsoft and software from Microsoft could work together better, but obviously what you see is what you get. And you get a huge Skype window (chat or whatever) on the second monitor.
The fix: You have to edit LYNC.EXE.MANIFEST file. First, exit the Skype client so that it is not running in the background. Go to C:\Program Files (x86)\Microsoft Office\root\Office16 (the location can obviously vary depending on your version of software). Locate the file LYNC.EXE.MANIFEST and open it in your favorite text editor with administrator privilege. Somewhere near the line number 11 or so, locate the line that says “<dpiAware>True/PM</dpiAware>”. Remove the “/PM“, so the line reads “<dpiAware>True</dpiAware>”. Save the file.
Testing: Start Skype for Business, and enjoy the life being able to move the Skype window to the second monitor without the window hogging half of the screen.
Note: It depends if the settings shown above are actually permanent or not. For Skype for Business I had to redo the setting every time I had rebooted the laptop. After upgrades it was required as well. I’m not even trying to dive into explaining all this behavior and why these repair actions are doing what they do. Feel free to comment below. Whatever changes you do is at your own responsibility anyway.