Tip: Scaling your Remote Desktop session
Posted by llemarie on November 1, 2007
No matter whether you’re a Windows lover or hater, there’s no denying that Remote Desktop is one of the greatest features of the system. It beats VNC and many other remote control solutions by far for its sheer speed and picture quality (although of course VNC is genius for the fact that it works on Linux and Mac).
One gripe I have had with Remote Destop for years though is that I want to be able to connect to my desktop machine at its native high resolution from my laptop which has a lower resolution. Scaling isn’t that hard! Don’t give me those scrollbars, they are just useless. Both TightVNC and MaxiVista (and many others) support scaling the remote screen and it looks very good, so it’s been frustrating not to have the feature in RDP.
This morning I found that RDP does indeed support nice and efficient scaling, just not from the GUI settings. Here’s how:
- Configure your remote connection from the GUI as usual.
- In “Local Resources, make sure that “Apply Windows key combinations” is set to “On the remote computer”.
- Save the connections settings to a file in a sensible directory. Call it for example “Remote.rdp”.
- Open Notepad and edit that file “Remote.rdp”, it’s just a text file that looks like this (short version):
screen mode id:i:1 desktopwidth:i:1280 desktopheight:i:800 session bpp:i:16 winposstr:s:0,3,0,0,800,600 compression:i:1 keyboardhook:i:1
- Add a new line with this text: “smart sizing:i:1″
- Change the desktop width and height to what you want (for example 1600 and 960 to keep the aspect ratio).
- You’re done! Save and quit Notepad. Double click on Remote.rdp, you’re connected at high resolution!
Using this extremely simple tip (hacking with notepad! where have the hex editor days gone ?) you can crank up your resolution to 4096×2048, if you don’t mind not being able not to read anything. I find that a factor of roughly 1.25 is sensible.
Tip: Use a higher resolution desktop than your monitor can support « llemarie’s weblog said
[...] Comments (RSS) « Tip: Scaling your Remote Desktop session [...]
justin said
Wow, what a great tip. The fact that an RDP file is really an INI-style text file is no secret, but the smart sizing addition is one that I have not seen before. Nice find.
Bill said
Well done! Our main software product here has a minimum resolution requirement of 1024×768. Your tip allowed me to get a client connected over remote desktop from his new 800×600 sub-notebook. Fantastic!
Tip: Updated: Use a higher resolution desktop than your monitor can support « llemarie’s weblog said
[...] the instructions from here to create a .rdp file and add “smart sizing” to [...]
Peter Del Presto said
So I changed the default.rdp file as suggested on the controlling pc. I have a 1024 X 768 remote (controlling pc) and a 1280 X 1204 (controlled pc). My full .rdp file follows, but when I connect, I still get scroll bars. Any ideas?
Peter Del Presto
screen mode id:i:2
desktopwidth:i:1280
desktopheight:i:1024
session bpp:i:32
winposstr:s:0,1,0,0,800,600
full address:s:pp05865.pncbank.com
compression:i:1
keyboardhook:i:1
audiomode:i:0
redirectprinters:i:1
redirectcomports:i:0
redirectsmartcards:i:1
redirectclipboard:i:1
redirectposdevices:i:0
drivestoredirect:s:
displayconnectionbar:i:1
autoreconnection enabled:i:1
authentication level:i:0
prompt for credentials:i:0
negotiate security layer:i:1
remoteapplicationmode:i:0
alternate shell:s:
shell working directory:s:
disable wallpaper:i:1
disable full window drag:i:1
allow desktop composition:i:0
allow font smoothing:i:0
disable menu anims:i:1
disable themes:i:0
disable cursor setting:i:0
bitmapcachepersistenable:i:1
gatewayhostname:s:
gatewayusagemethod:i:0
gatewaycredentialssource:i:4
gatewayprofileusagemethod:i:0
smart sizing:i:1
llemarie said
Hi Peter,
Please check that you’re running the latest Remote Client client version. I believe you can get it from Microsoft’s website here:
http://support.microsoft.com/kb/925876
Regards,
Lionel.
Peter Del Presto said
Lionel
Updated both computers but the result is the same. Have you seen this before. I assume the .rdp file mods are correct
Peter
llemarie said
Hi Peter,
The screen mode must be 1:
screen mode id:i:1
Also you won’t be able to go above the resolution supported by the target PC.
Regards,
Lionel.
Peter Del Presto said
That did it – not sure why my default was different from others but works great now. I have used PCAnywere in the past. Remote desktop is faster and the screen scaling algorithm is better for sure.
Jonathan Rought said
I have the opposite problem. I have a 1900 x 1200 resolution and I want the RDP connection to be at a lower resolution.
Any thoughts?
Regards
Jonathan
llemarie said
Hi Jonathan,
You can simply specify a resolution below your local screen resolution to display RDP in a window. For example:
screen mode id:i:1
desktopwidth:i:1280
desktopheight:i:1024
Or did you want a fullscreen display at a lower resolution? That is not supported that I know, I don’t know a workaround for this case.
Regards,
Lionel.
Jonathan Rought said
Lionel
Thanks for the reply. Setting that option just makes the screen windowed and scales down the fonts and graphics so they are even smaller. Is that the same as setting them in the RDP gui?
From what I’m reading I don’t think you can have either a windows or a full screen RDP session at a lower resolution than the host panels resolution.
Back to the joys of Googling to infinity looking for that one nuggett of relevance!
Many thanks
Jonathan
llemarie said
Hi Jonathan,
In the GUI you don’t have the “smart sizing” option. However you can edit the default.rdp file in a text editor (it’s in My Documents, you might need to show hidden files) and add the “smart sizing” line manually. Then going in the GUI and choosing a resolution will display the remote machine in a window that will resize.
Hope this helps,
Lionel.
Jonathan Rought said
Hi Lionel
Thanks for putting up with my questions! The Smart Sizing option only seems to size the screen smaller. What I need to do is set the screen to a resolution of say for example 1685 x 1050 (My native host panel is 1920 x 1200) and then Smart Size it upwards so the fonts etc scale upwards so I can read them easier.
Perhaps I’m asking to do something that RDP can’t do yet. I just don’t know and am sort of wishing I’d gone for a panel with a lower native resolution!
Many thanks
Jonathan
llemarie said
Hi Jonathan,
Set the remote resolution to 1685×1050, without the smart-sizing, so that it is now displayed in a window at 1:1 ratio. If you now press Ctrl-Alt-Pause, what does it do?
That’s the shortcut for fullscreen, with smart-sizing it will force a bigger screen on a smaller local monitor but I have not tried it the other way around.
Regards,
Lionel.
Jonathan Rought said
Lionel
Hi Lionel
I tried that at 1:1 with and without smart sizing and the session goes to full screen but the additional space is fulled in as a black border and the ratio and size stays the same
Thanks for all your help, it’s much appreciated. If you think of anything else I’m all ears but at this stage I think it will involve rabbitt ears coming out of a magician’s hat!
Many thanks
Jonathan
Scaled Remote Desktop « c# to javascript, actionscript said
[...] Filed under: life — Tags: mstsc, tserv — zproxy @ 9:01 pm Did you know you can apply scaling for your remote desktop connection? I didn’t. Now I [...]
ankit said
thanks for the tip ! works perfectly !