About the author

Steven HarmanSteven Harman is a passionate developer who believes that writing great software isn't just a job, its a craft.

ASP.NET MVP

For recent posts and more about me, scroll to the bottom.

Subscribe

  • Subscribe to my feed. via RSS
  • Subscribe via email via email

Jobs

Badges

  • Subtext Project
  • Support Subtext
  • HiddenNetwork.com Banner

Using Virtual PC with Multiple Monitors, Sort Of

I'm a huge fan of using multiple monitors and the productivity gains they bring.

Virtual PCI'm also a big proponent of using Virtual Machines to isolate client projects... once you get over the initial work it takes to get your VM Image library going, the productivity gains are gi-normous!

However, the lack of real multi-monitor support in Virtual PC (both 2004 and 2007) tends to limit the productivity gains you can squeeze out of your VMs. This is especially evident when using VMs as a development environment on a daily basis. I was hoping that Microsoft would address the issue and bake support into VPC 2007 - but no dice.

It is possible

... if you're willing to jump through a few hoops along the way.

People often forget that a virtual machine is still by-and-large a fully functioning computer. That means you can use all of the capabilities of the system just as if it were another beige box in your office. For example, you can Remote Desktop into a VM (assuming the OS running in has Terminal Services/Remote Desktop built in and enabled).

Remote Desktop... what?

There is an under-documented feature (I stumbled across it here) available in the latest Microsoft Remote Desktop Connection* client (RDC) that will allow you to take advantage of multiple monitors on your PC. You'll need to launch the RDC client from a command line using the /SPAN switch**, like so:

c:\mstsc /span

This will launch the RDC client and it will automatically take up all available screen real estate (up to 4096 x 2048 pixels) on your PC. The remote system doesn't realize you have multiple monitors, but just sees the connecting PC has having one big-ass screen.

What about Virtual PC?

So like I said... you've got to jump through some hoops to get it done, but it is do-able. Here's what you've got to do:

  1. Open Virtual PC
  2. Start a VM image (and make sure Remote Desktop is installed, enabled, and configured)
  3. Open RDC client using the above command line arguments
  4. Browse to (or enter the machine name for) your VM
  5. Connect...

I realize going through all of that seems like a hell of a lot of work just to get pseudo-multiple monitor support, but it will allow you to take advantage of all of that screen real estate - and hopefully result in a boon in productivity!

Other Options?

I believe that some of the other VM servers/clients out there - like the free VMware Server - already have some multi-monitor support built in, but I've not tired this myself as we seem to have settled on VPC at work. Plus, I don't like the idea of having the VMware Server process always running in the background. At least with VPC I can just fire it up when needed. Though, I could fork out the dough for VMware Workstation - but I like free stuff!

I've also thought about trying some of the desktop virtualization utilities like MaxiVista and UltraMon... but like I said, I'm a big fan of free stuff. :)

* - You'll need Remote Desktop Connection 6.0 or greater, This version is included in Vista and available as a download for XP SP2 and Server 2003.

** - If you're running Windows Vista and Start++ (like all the cool kids), I've built a Startlet to launch RDC with the SPAN argument. [DOWNLOAD]

What others are saying.

# Using Virtual PC with Multiple Monitors, Sort Of
Gravatar DotNetKicks.com
Apr 03, 2007
You've been kicked (a good thing) - Trackback from DotNetKicks.com
# Re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Haacked
Apr 04, 2007
Wow! I need to try that!
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar James
Apr 04, 2007
I have to say that MaxiVista is well worth the few bucks ($30).

Just see the video demo at http://www.maxivista.com/demo.htm

I also registered the software and for me it is a must have if you have multiple computers.

James
# Morning Coffee 58
Gravatar DevHawk
Apr 05, 2007
# Using Virtual PC with Multiple Monitors, Sort Of
For anyone who uses multiple monitors and any MS Virtualized environment, this is for you: Link to Using...
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar JoeF
May 03, 2007
What about full screen? That doesn't seem to work across multiple monitors! :( No full screen would make this completely worthless!

Any ideas?
Joe
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Steve Harman
May 03, 2007
@Joe: I'm not sure I follow. When I use the /SPAN switch the RDP window automatically takes up all of the available desktop space on my local system... which I take to be Full Screen mode. The Windows Start Bar in the RDP window spans both monitors and I even see the "Connection Bar" at the top of my screen.

Can you elaborate a bit on how it is working now vs. how you would like it to work?
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar John Dhom
May 16, 2007
@Joe: monitors must be same rez/orientation AND perfectly aligned in control panel->display settings... if not you don't get the "full screen" mode.

Wish you could also tell mstsc.exe what displays to use. I'm running 3 and only want rdp on 2 displays. Something like mstsc.exe /SPAN /DISPLAYS:2,3 would be very handy. I'm stuck using approximations with /height:nnnn /width:nnnn and no full screen :|

@Steve: I've been using maxivista, and other tricks, to get something like real multiple adapter vms for several years... none particularly satisfying. Everyone thinks they "own" the displays :( We are getting closer. VMWare Workstation 6 was looking good and then dropped support for multiple monitor 2003 guest OSes in Beta 2, sigh. Just downloaded the 6.0 RTM and will give it another go.

Best,
/jhd
John Dhom
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Steve Harman
May 26, 2007
@John: Thanks for the updates and the tips on VMWare... and please let me/us know what you find out about multi-monitor support and Windows Server.

If VMWare Workstation 6 does end up with the great multi-monitor support that every one is talking about, I might just have to suck it up and buy a license.
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar John Dhom
May 31, 2007
"great multi-monitor support", to me, requires multiple virtual display adapters. This type of support gets you the behavior that your used to... apps maximize to a single screen and so on. MaxiVista work this way, and is useful... but not satisfactory for a multi-adapter vm. VMWare Workstation 6 support multi-adapters which is very exciting [to this geek].

I installed VMWare Workstation 6 RTM yesterday and am happy to report that multi-monitor support is working fine. Woohoo. I have both server and client OSes running multi-monitor (up to 10, i've only tried 3)! I have some minor annoyances to report to their forum, but they are just that. This is by far the best multi-monitor vm support I've seen to date!

I can only hope that VPC follows suite.

Best,
/jhd
John Dhom
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Steve Harman
May 31, 2007
@John: Sounds like it's time for me to put my money where my mouth keyboard is and pick up a copy of VMWare Workstation 6.

Thanks again for the feedback!
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar John Dhom
Jul 18, 2007
I'm happy to report that VMWare Workstation 6 multi-monitor stuff is quite good. It will auto-detect adapters, on the host, and allow you to cycle thru 1-n monitors in the vm.

In my case I'm using a 3 adapter/monitor host box... clicking the monitor icon cycles me thru 1, 2, and 3 monitors. Pretty sweet.

/jhd
John Dhom
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Steve Harman
Jul 18, 2007
@John: That's great feedback!

I'm actually contemplating buying a MacBook Pro and being able to use my VM images on both my Windows (Vista) workstation and my OSX laptop would be awesome. Sounds like VMWare Workstation + Fusion might be the right combination to get the job done.

Actually, it would be awesome if they [VMWare] could fold the OSX support of Fusion into the Workstation product so I could get all of that power by just buying a single product.

Is anyone else out there running a setup similar to that? If so, what virtualization technologies/stacks are you using?
# VPC 2007 Dual Monitor support
Gravatar Lance's Whiteboard
Oct 11, 2007
I have been trying to find a way to allow you to run Virtual PC 2007 with multiple monitors. Natively
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Rodney
Jan 24, 2008
Hi,
c:\windows\system32\mstsc cs1e1.rdp /span
is not working for me. It keeps bringing up the help dialog and /span is not in the parm list.

i'm using xp pro sp2 and ms vpc 2004 sp1

am i missing something?

thanks,
rodchar
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar John Dhom
Jan 30, 2008
steve: missed your original reply. hopefully you got your macbook config up and running. a friend of mine is successfully running that configuration.

vmware workstation 6 was indeed a big improvement, the multiple monitor support feels native and is very performant. recommended.

lance: i'm unaware of any native-like multi-monitor experinece for vpc, so i punted it. a few years ago i had "some" success using maxiview. you can install multiple maxiview virtual video adapters, in your vm, and run instances of their viewer on 1, or more, host displays. i found the config barely tolerable as you couldn't maximize the viewers and very clunky switching between vm and host. i actually had better success running a 2nd, stripped down, vm for the 2nd monitor... but come on :|

note: it has been 2 years since my maxivista experiment. i was unhappy with their licensing change which effectively took away functionality i had originally purchased.

/jhd
John Dhom
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Scooter
Jun 11, 2008
So is the RDP Connection to the VPC 8Bit?

I do this now with VMWare (yeah our work chose that one) and if I have a VM running on some box and then Remtoer into it, I only get 8Bit Color.

The Span for VMWorkstation is Great, though I need to have the VM on a server so many people can develope on it at the same time.
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Steven Harman
Jun 11, 2008
Scooter, AFAIK the remote connection to the VM is using 32-bit color... at least that's what I have the client set to use and the colors look fine once the connection is established.
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Scooter
Jun 17, 2008
Seems to work fine for me if the VM I'm running is running XP. ITs when I run a Win2003 Server VM that it is dropping the bitdepth down to 8.

I've looked in the RDP Connection settings on the Server and the Client, both are set to 32Bit color.

In the VMX file I've increased the svga. settings to:
svga.numDisplays = "2"
svga.maxWidth = "2560"
svga.maxHeight = "1600"
svga.vramSize = "134217728 "


The Vm Image looks great in VMWorkstation on 2 displays. Its jsut in the RDP Client it looks like crap.

The VGA Adapter Properties report 22megs of RAM no mater what I set it to. )-;

Scott<-
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Andrew
Jun 19, 2008

I've been using VPC for 3 years and i've just switched to VMWare over the course of the last week, and wow - what an upgrade. All i can say is - please, if you have the chance - do yourself a favour and stop wasting your time with VPC, VMWare is much, much better.

>> "I don't like the idea of having the VMware Server process always running in the background"
Good point. This is THE reason i haven't tried VMWare for so long, I didn't like the idea of running extra services, but believe me - you soon forgive this once you are able to run a virtual machine on two 1920x1200 monitors, dual screen, without using an RDP connection (RDP refresh rates (and mouse pointer flickering) have always been unacceptable to me, even when the host/guest are on the same hardware).

VMWare workstation supports dual screen and full screen (even at 1920x1200 (vpc is capped at 1680x1050)), and it also supports usb sticks, not to mention snapshots.

I sound like an advert for VM. I'm not. I would prefer a free alternative, but not if it came with a hit to the feature list. Your employers might be using VPC (mine do too), but VMWare comes with a free converter which will convert a VPC to VM, which is what i use for home-use. Give it ago - once you get it working... you'll wonder why you didn't do it sooner. VPC needs to play catch-up

# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Kent
Jun 27, 2008
Tried this, but RDC just tells me I can't connect: "You are already connected to the console of this computer. A new console session cannot be established." XP SP3 on all VMs and host computer.
# re: Using Virtual PC with Multiple Monitors, Sort Of
Gravatar Kent
Jun 27, 2008
duh...got it now, RDC from *outside* VirtualPC (also have to set the VM to allow remote connections).
Comments have been closed on this topic.