[Note: Some things have changed with RDP in recent Windows versions so I updated this article accordingly in April, 2019]
I remember reading about this feature when Windows 8.1 was made generally available in late 2013, but I didn’t have time then to try this out. Today while being connected to my home server to do some development work I decided to test if the new features in Remote Desktop (RDP) work or provide any real benefits.
My number one gripe with RDP has in the past few years been the amazingly clumsy way to resize a remote session from full screen to something smaller. Experienced RDP users know how to do this, but less regular users always seem to struggle with this view:
You first have to close the current connection, and start a new connection. Before clicking Connect you have to scroll the slider from Large (Full screen) to something smaller. Just small enough as not to fill your desktop (and to fit in a window, so less than your max resolution on the host), but large enough to actually be useful. It’s a tiny thing but annoying.
Several tools, like Remote Desktop Connection Manager from Microsoft (download) have kind of resolved this issue, but it would always mean an additional software install on whatever host system you were working on. There’s also the fabulous Remote Desktop Manager, which does all this and “just works”, but it’s not free [Update April 2, 2019: There’s a free edition available now as well!]
Admittedly, paying for good software is something we all should do more often, but still, $84,99 for a tool I already (kind of) have as part of the OS seems too steep.
Smart sizing in RDP
In Windows 8.1 and Windows Server 2012 R2, Remote Desktop Connection client (mstsc.exe) introduces resolution and scaling support, among other things. While the size of the Remote Desktop session can still be set when you initiate the connection, you can also now freely adjust it while being connected.
Here’s how it works.
First, you’ll need to connect from Windows 8.1/Server 2012 R2 to Windows 8.1/Server 2012 R2 (or newer). My server is Windows Server 2019 and my client workstation is Windows 10 (1809), so that’s more than enough to get dynamic scaling to work. When connecting, you can connect with any display size. Depending where you put the slider specifies the max size of the remote session.
After you’ve connected, press Ctrl-Alt-Break. On my laptop it actually requires Ctrl-Alt-Fn-Break, since Pause/Break button nowadays seems to have to functions.
This actually toggles between full screen and windowed mode. Now, in the windowed RDP session, click the top-left corner and in the menu enable Smart sizing:
You can now resize the RDP window and see smart sizing in action. Here’s a screenshot from my RDP session with about 10% scaling:
And again in about 25% scaling:
Based on my testing it works just like it should: You just enabled smart sizing, and forget about it.
Smart scaling is a small update but long overdue – RDP’ing to servers feels just that much nicer from now on!