Solution 1:

I eventually found a solution to this via this blog post by Falafel Softare.

Basically:

  • Download Microsoft's souped-up RDP client called Remote Desktop Connection Manager 2.2
  • When you add a new server, go to the 'Remote Desktop Settings' tab of the Properties and select 'Same as client area'

I've written this up in a bit more detail with screenshots on my blog.

Edit: Remote Desktop Connection Manager 2.2 has been replaced by version 2.7. People in comments say 2.7 will work on Win8.1 with some settings changed, however on Windows 10 doesnt look like it solves the problem. Unfortunately MS have not left v2.2 anywhere for us.

Solution 2:

In Windows 8.1 and the corresponding Windows Server 2012 R2, there is a new feature (though not mentioned in the docs http://technet.microsoft.com/en-us/library/dn283323.aspx ): there is an integration with the window manager (DWM) of Windows such that the remote machine (server) will try to match the client's DPI, thus making things look natural size (bigger).

It looks a bit weird on my Surface 2 with some older programs that are not designed with scaling up in mind (basically, DWM just zooms the window, resulting in pixelated apps), but it works.

Solution 3:

Microsoft released an app which on iOS and Android is known as RD Client, and on windows App store as Microsoft Remote Desktop.

This app will natively try to connect with a lower resolution to make the experience more viable. But what it also does is allowing you to set the desktop resolution itself, and by pinching the screen, you can then zoom in, so you only see a portion of the screen if you need to read, or pinch out if you want to see the whole desktop.

I have a 2560x1440 27" monitor that I use to connect to my RD server, and my mobile phone with 5.6" has the same resolution. I can connect to the same desktop, but unlike with my desktop, from my phone, its just not readable. But the pinch and zoom makes it perfect to work with, a solution you seem to be after too.

I do not have a Surface pro, so it may be that the setting is located differently than on my Android, but I'll tell you where I found it on my android so you can look for it on your device.

It can either be specified for a specific pc/server, or globally for all connections.

Go to the menu of the app itself and you'll find Display Resolution. Press + Custom and add your own resolution, set it to 100% scaling. There is a "Match this device" option, but that will induce scaling, and we don't want that.

Once added, select that resolution, and connect. Now you should have what you want, and you can zoom in by pinching.