26

Problem: When I use remote desktop from a Surface Pro 4, running Win 10, to a Win7 or Win2003 system, the high dpi of the Surface results in the remote desktop being too tiny to see. In this case, the remote is the surface (with high resolution display), and the host is low (legacy 92 dpi) resolution display.

This issue is discussed and demonstrated in MS blogs here and here on SU

However, the problem I experience is the following:

Yes, there is the Zoom feature in the rdp client. However, when I use it, I lose the ability to go full screen on the client (to use all client real estate, and to get alt-tab and other keys passed up to host). After 30 min of use, I can say clearly that the zoom feature in the win10 RDP client is NOT useful for real work.

We made sure the Win7 hosts are already on Win7-SP1 with kb2923545 installed. This makes no difference that we can see.

I tried using Remote Desktop Connection Manager, as proposed here, but it appears to lack the ability to give me a zoomed , full screen experience (perhaps I failed to find it, but I poked it a lot! There is a report that the current 2.7 version lacks the needed functionality, and that the older 2.2 version should work, but we did not find the 2.2 version for download).

So.... my old Vaio laptop is great for remote desktop, and my new Win10 Surface is, currently, unusable as a remote desktop remote client.

How do I get my new Surface as usable as the old Vaio?

Note: We are looking to use the Win10 Surface as a real rdp client to Win7, 2008 and Win2003 hosts. Right now, from all our work so far, this is simply a missing feature. (And we are suffering!)

Note: Please don't tell us to "log out and start a new session" on the host: This defeats the purpose, is not useful, and is a huge regression from the functionality we had before trying the Surface. Also, please don't tell us that only win10-win10 gives the right experience. We had a fine experience using legacy-dpi remote systems. The problem is the high-dpi surface.

3
  • 1
    This simply involves using a different client other then default Remote Desktop, one that has better supports, for your high resolution display.
    – Ramhound
    Jan 22, 2016 at 18:05
  • @Ramhound Any suggestions? Jan 22, 2016 at 18:43
  • Test multiple solutions until you find a solution that you like.
    – Ramhound
    Jan 22, 2016 at 18:46

8 Answers 8

35
+200

I must say, this has been very frustrating. The Microsoft RDP client is simply missing functionality that is required in this new, multi-DPI world ....

I found a solution, and have verified it both on the Surface 4 Pro and ASUS PB279Q 27" 4K/ UHD 3840x2160 monitors at full DPI, and the Dell XPS 13 (running UltraSharp™ QHD+ resolution (3200x1800)!) -- I expect this approach will work for any high DPI remote.

Further, I have verified it when the host machine is "regular" DPI and high DPI (specifically ASUS PB279Q 27" 4K/ UHD 3840x2160 at native resolution).

First, I should note that the Microsoft remote connection manager path (mentioned here) did not work for me. If it works at all, it would appear that only v2.2 of that tool can do what is needed. The version current at this writing is 2.7, and it did not cut it, despite a lot of tinkering. (But I repeat, the stock remote desktop client should solve for this....)

I found no working solution on any thread here on Stack Exchange. But then I found this thread on the Microsoft forums. It mentions an RDP client I had never heard of: mRemoteNG I tried it, and BINGO.

The Working Solution

mRemoteNG works %100. Just like magic. I get an RDP client, full screen, with alt-tab and other keys passed to the host (just like in the Microsoft RDP client, mstsc.exe), and it looks great. It handles the difference in resolution automagically, and just works!

I have hours of use with it, and it flies. This is the first time since getting this new Surface 4 Pro that I have had usable remote desktop.

So I am happy!

Additional Solution (well, band aid) in updated Windows 10 (June 2016)

The remote desktop client, in updated Windows 10, has a Zoom option in the system menu that works at least with Win2008-R2 and higher target machines. The rendered quality is lacking, but this option does work. (Was very useful after upgrading desktop to high DPI displays.)

This client does NOT remember the zoom level, however, so you find yourself having to set it every time you connect (yuck). This path is a band aid, not a solution.

Reported Additional Solution

Not tested by this writer, but reported by friend at Microsoft: Remote Desktop Connection Manager (https://www.microsoft.com/en-us/download/details.aspx?id=44989)

5
  • 4
    +1 for mRemoteNG. Zoom in built-in client is manual and doesn't work with full screen. RDCman (on Windows 10 anyway) seems to be just as bad as the built-in client. Sep 28, 2017 at 10:48
  • 1
    The "Reported Additional Solution" is the remote desktop manager with versions 2.2 and 2.7 that you mentioned previously in the post. It does not work. :( Jan 25, 2018 at 12:53
  • I've been fighting with Remote Desktop Connection Manager and got close, but this is by far the superior solution. Sep 26, 2018 at 4:03
  • I just found this. The additional solution is bogus, but mRemoteNG is the absolute gold that gave you upvote #32. It's unbelievable how Microsoft can always bcome second to their own game! I'm using mRemoteNG in what seems to be an RDP wrapper and it works PERFECTLY to connect my Windows 10 in a 4K display to a Raspberry PI showing 1920x1080 in order to not be too microscopic! I read something about saving the RDP connection and editing it, but you solved it all.
    – Ricardo
    Nov 13, 2022 at 12:13
  • Sadly if the remote machine has multiple monitors it still wipes out the monitors. No way to switch monitors like on AnyDesk via keyboard shortcuts.
    – Ahmed
    May 11, 2023 at 19:41
4

Windows 7 (or Server 2008) does not support RDP protocol version 8 which introduces DPI remoting (which is what the article you referenced talks about). This results in the behavior that you are seeing - you can have either full screen or zoom, but not together :(

The fix is to update to Windows 7 SP1 (or Server 2008R2 on the server side) and make sure that you have the following patch installed: https://support.microsoft.com/en-us/kb/2923545 - then you will have DPI remoting (so not everything will be tiny).

After you have DPI remoting, if you connect to an existing session (log in as someone who was already logged in), you might run into issues with the Windows UI and applications still have the old DPI settings. These issues have been mostly addressed in Windows 10 (UI elements now scale with DPI settings change). The best remoting experience is Windows 10 to Windows 10.

7
  • If I understand you correctly, my new laptop rig (Surface 4/Win10) is just not going to be a useful tool to remote to win7, and other older win versions? Then the surface is just a non starter for sys admins? (Seems impossible) Jan 25, 2016 at 0:04
  • RE "The fix is to..." Sorry, but no dice. Already have that all installed, and absolutely no joy at all. From what I can see, RDP from Surface 4 to Win 7 is essentially broken. Jan 25, 2016 at 1:20
  • RE: 1 - yes, the RDP v7 was not designed with high dpi screens in mind for the simple reason that the high dpi screens were not around at the time. You can try to lower your DPI settings on the Surface 4 and then connect, that should make things big again.
    – cdavid
    Jan 25, 2016 at 5:58
  • Can we slow this down? This is not about dpi and rdp versions. This is about microsoft taking a working platform, rdp, that in a %100 92dpi world works fine, and making new high dpi devices incompatible with that world. This breaks our entire remote access infrastructure. Microsoft can clearly do better. The current functionality is profoundly broken. Jan 25, 2016 at 6:12
  • 1
    @CDavid is right about the problem. Older versions of Windows expect the connecting machine to be at 72DPI. The update he shared does enable passing of the actual DPI, however, it does not enable the option to change scaling. For that, I found an older hottfix that does both... support.microsoft.com/en-us/kb/2726399 Your mileage may vary. Aug 24, 2016 at 22:20
3

I've been fighting this since I got my Surface Pro 4 in September. Not until I managed to update to the Anniversary Edition 1604 have I found a solution. On each RDP session, the size did not match my screen... constant use of the side bars to maneuver.

However, today, I discovered that when you are in the remote session, the system menu (upper far left corner) has a "Smart Sizing" option. Even though the setting doesn't persist between sessions or machines, the extra two clicks are far better than before. The zoom and other controls that are there were not what I needed.

1
  • This worked for me. There's also the "Zoom" option to zoom in the view. Feb 3, 2021 at 19:06
2

I had the same problem when RDP'ing from my Surface Book to legacy Windows 7 and Server 2012 clients: The RDP window is tiny and unsuable.

I found this solution, which works well for me so far:

You can disable HiDPI-awareness for mstsc.exe (the Remote Desktop Client), which gives you the correct scaling when doing an RDP connection from a client with a HiDPI display to a remote host that doesn't support HiDPI.

To do so:

  • copy c:\windows\system32\mstsc.exe to mstsc2.exe
  • copy c:\windows\system32\en-us\mstsc.exe.mui to mstsc2.exe.mui
  • set a registry key for mstsc2.exe that disables HiDPI-awareness for mstsc2.exe:

    reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /t REG_SZ /v "C:\Windows\System32\mstsc2.exe" /d "~ DPIUNAWARE" /f

Then, always use mstsc2.exe when you want to make a RDP connection to a non-HiDPI-aware remote host.

1

Cheesy solution, but works for me. This allows you to run a remote session at 100% DPI if your local session is higher than 100% DPI, and the display will be scaled accordingly, if your host is Windows 10.

Create a folder... Anywhere... And open an command prompt there.

Execute the commands:

  • copy /Y C:\Windows\System32\mstsc.exe mstsc.exe
  • mkdir en-US
  • copy /Y C:\Windows\System32\en-US\mstsc.exe.mui en-US\mstsc.exe.mui

(Update the last two with your language code if you are running something other than en-US.)

Now, right-click on the new mstsc.exe file and select Properties. The "Compatibility" tab is present. Go to this tab, click "Change high DPI settings" and then "Override high DPI scaling behavior", with "System" performing the scaling.

Now when you launch Remote Desktop Connection using this file, everything will be rendered at 100% scaling but bitmap-scaled up to your system's DPI scaling. It works with full screen as well. The only problem is, the mouse cursor shows up tiny. (This also happened with mRemoteNG when I tried it.)

If you go with this solution, you can script the commands above to run at startup so that you will get updated versions of the remote desktop client as Microsoft ships them out. It does not clobber the high DPI scaling change.

It is necessary to do this with a copy of mstsc.exe because Microsoft will not allow you to change compatibility settings for the copy at the default location.

[Edit] Just realized that this is mostly the same solution offered by Chris above... Just a slightly different way to go about the same result.

0

We just did this -

  1. when connecting to an RDS server and the items are too small, have them right click on the Server Desktop, Personalization.
  2. Choose - Change the Size of All Items Set to 200% Image settings
0

I have fought with the same issue as well, to no avail. a few months back, I tried a recommended alternative (free) client, https://parsec.app.

It allows to set a custom resolution to be used on the client, and can on top of that magnify the content.

On my surface, setting a resolution of 1680x1050 and switching it to fullscreen works nicely. The only downside so far seems that it doesn't reliably server/client copy/paste, but that might be an issue in my setup only, officially it supports the clipboard as well.

-3

Inside of the RDP session right click on the desktop and choose "Screen Resolution". Click Identify and close out. It'll tell you the you have to restart to change settings - don't restart! Just log off the RDP session and log back in, your remote desktop should fill the screen now.

2
  • Please don't submit multiple instances of an identical answer.
    – Ramhound
    Jan 16, 2017 at 19:02
  • Please do not post the same answer to multiple questions. If the same information really answers both questions, then one question (usually the newer one) should be closed as a duplicate of the other. You can indicate this by voting to close it as a duplicate or, if you don't have enough reputation for that, raise a flag to indicate that it's a duplicate. Otherwise tailor your answer to this question and don't just paste the same answer in multiple places.
    – DavidPostill
    Jan 16, 2017 at 23:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .