How do I open a remote desktop session on a secondary monitor (in full-screen)? It always seems to want to open on the primary one and I cannot find a switch which lets me choose.
Is there a known solution or workaround for this?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.
Sign up to join this communityHow do I open a remote desktop session on a secondary monitor (in full-screen)? It always seems to want to open on the primary one and I cannot find a switch which lets me choose.
Is there a known solution or workaround for this?
I don't know if this helps, but in my experience, Windows tends to remember the monitor on which the app is maximized. Try opening RD on the second monitor, maximize it, close it, and see if it opens on the second monitor when you open it again.
winposstr
which you may be able to tweak. See Shane's answer below.
Here's complete guide from Microsoft on how to do it: http://social.technet.microsoft.com/wiki/contents/articles/665.how-to-set-the-monitor-for-a-remote-desktop-session-in-a-multi-monitor-setup.aspx
Try this:
winposstr:s:0,1,2142,150,2942,750
It worked for me
winposstr
field.
Open the RDP file in a text editor, find the
winposstr:s:0,1,xpos,ypos,width,height
Change the xpos
and ypos
in the RDP file and save it.
You can then have the window open consistently where you want it.
winposstr:s:0,1,xpos,ypos,xpos+width,ypos+height
. This worked perfect for me.
The other answers which mentioned editing the winposstr setting in the .RDP file seemed promising but I was confused by the explanation of how the position values should be calculated.
The TechNet article How to Set the Monitor for a Remote Desktop Session in a Multi-Monitor Setup has a good explanation.
By the way, the article uses clearer names for the positions, I think, that have been used in other answers here: "winposstr:s:0,1,left,top,right,bottom", where horizontal values are measured from left to right and vertical values from top to bottom.
As far as I can see, from the article and from experimenting with a RDP file in Windows 8.1, here's how to edit the .RDP file to maximize an RDP session on a particular monitor:
1) Determine the left and right edges of each of your monitors, based on their resolution and which monitor is the primary one. In my case, my monitors are:
Left hand = Primary, 1680x1050;
Right hand = Secondary, 1920x1200.
So the edges of the two monitors will be:
Primary (left) monitor: Left edge: 0, Right edge: 1679 (not 1680 because the horizontal position is 0-based, not 1-based);
Secondary (right) monitor: Left edge: 1680, Right edge: 3599 (1680 + 1920 - 1, since the position is 0-based).
Note that if the secondary monitor is to the left of the primary one, the left edge of the secondary monitor will be a negative value.
2) Edit the winposstr setting in your .RDP file to set both the left and right values to positions that are on the same monitor. It doesn't matter what those values are if the RDP window is always going to be maximized, as long as they are on the same screen. The top and bottom values aren't important, if you're just going to maximize the RDP window.
So to display the RDP window on my primary, left-hand, monitor I could set:
winposstr:s:0,3,700,0,1500,600
And to display it on my secondary, right-hand, monitor I could set:
winposstr:s:0,3,2000,0,3000,600
3) Edit the screen mode setting in your .RDP file to maximize the RDP window:
screen mode id:i:2
4) Try it out. If the RDP window still doesn't appear maximized, despite setting "screen mode", set the desktopwidth and desktopheight settings in your .RDP file to the same width and height as the monitor the RDP window is displayed on.
I am on Windows 7 and none of the above suggested methods worked for me. Mind you I was using a preconfigured RDP shortcut that I downloaded from Amazon EC2, which I guess is where the problem lies so if you're trying to fix this problem within a similar setup to mine here's the steps I took to fix it
If you close the session and run your shortcut file the session should now come up in the desired monitor and the correct resolution (which was another problem I was having before, i.e. I could move the session between monitors but it'd be a pain to sort out the resolution)
Hope this helps!
A simpler way to do it is
Run Remote Desktop Connection (DO NOT EDIT RDP FILE)
Move the RDP dialogue to the monitor you want your session to be appearing
Click 'DISPLAY' tab and drag the slider to the extreme right for a full screen view
... It was that easy
I found that if I move the remote desktop connection dialog to the second monitor and run it that it will open the session there. Then you can save that connection to a .rdp file and that should do it for you.
In Windows 8 it's pretty simple and I guess you can do the same in Windows 7: Simply set the size of the remote desktop to the resolution of the secondary screen, open session and drag the window to the secondary screen. Maximize. Done.
This worked for me, possibly you might also have to press Ctrl+Alt+Break as suggested in another comment to make the fullscreen work.
The solutions above didn't work for me, but the one below did:
RDP on W7 - need to always open on a second monitor
Run the client and get it set up the way you prefer, or Open your saved RDP file.
On the Display tab, choose a non-fullscreen resolution.
On the General tab, click "delete these credentials", if possible.
Click Connect.
You will immediately get a local login dialog. Leave it blank and click OK . When you are connected and the remote login dialog appears, drag the window to the desired monitor. On the remote login dialog, click Cancel . The settings dialog should reappear locally. On the Display tab, you can now choose fullscreen. You can now save your session with the Save button on the General tab, as well as save your login credentials.
Try WiLMA - it has a "live layout" capability that can force certain application windows into desired layouts (such as on a second monitor).
In Windows 10/11 this worked for me. This process might seem strange but it really does work and it's very quick.
Delete the old RDP settings (.rdp file) and re-create it using the monitor you need.
So if you want it to appear on the second monitor, drag the RDP setup dialog to that monitor and when connected to RDP, minimize and drag the window which has the remote content to the second monitor, then close it.
This worked for me. Other described methods failed.
Notice that you might have to go to the Display tab before connecting and move the screen resolution slider all the way to the right to get full screen, on my machine it was configured to match the display resolution on my laptop.
Edit the RDP file with any text editor and search for
winposstr:s:0,showcommand,xpos,ypos,xpos+width,ypos+height
In my example I use [1920x1080] on the first monitor and [1440x900] on the second, both aligned top
winposstr:s:0,1,1920,0,3360,900
I came across this question whilst searching for a solution to the same problem...turns out for me that what was required was - because my dual monitors have differing resolutions - to have an RDP file whose Display settings matched the resolution exactly of the target monitor (i.e. fullscreen was not selected). That way, when I maximized the window, it fullscreened. The downside is that you need two RDP files, one for each monitor.
In Win XP I overwrote settings as oxyscythe suggested
Click connect to connect to the remote host)
and then I checked what happened with rdp file in notepad.
Here it goes:
screen mode id:i:2
desktopwidth:i:1920
desktopheight:i:1080
session bpp:i:32
winposstr:s:0,1,-1280,-74,-480,526
So maybe check if it is the same with win 7 and 8...
Using Windows 8.1 on an HP laptop screen on the left coupled with a large screen monitor on the right.
Problem: Connecting via RDP always opened a smaller window on my smaller laptop screen 1366x768.
Solution:
Open Control Panel -> Display -> Screen Resolution
Under "Change the appearance of your Displays", highlighting the large monitor 2 graphic and select "Make this my main display"
Click Apply
Now when I connect via RDP, I can raise the resolution under Options to match the 2nd monitor and it opens on the 2nd monitor or "main display"
Note: This also brought my task bar (pinned items, tray, and clock) over to the big monitor which was not a deal-breaker for me.
For me, I had to uncheck the option on the "Display" tab that says "Use all my monitors for the remote session". After unchecking that and connecting, I could maximize the RDP session on any monitor and it would not "stick" to one like before. One would think by the way it is worded you would want that checked, but I guess not in my case. Hope this helps someone else.
I tested this approach under windows 10 and linux systems. There is no need to install or modify any files.
Set your secondary screen as your main screen.
Open RDP. It will open in the main (secondary screen) and you will be allow to display in full screen mode.
If it's not the case, check your parameters in rdp and set full resolution.
Simple as that!
Very Simple