Installing Virtual Server 2005 R2 SP1 on Windows 7

Installing Virtual Server 2005 R2 SP1 on Windows 7

  • Comments 18


From time to time people have asked me how to install Virtual Server on Windows 7, and have even pointed me towards attempts made by other people with varying levels of success.  But I have not looked into this until today – because it is unsupported. 

Let me state that again – to be crystal clear – running Virtual Server on Windows 7 is not supported.  If you try to do this and things do not work for you – do not contact me or Microsoft – as the answer will simply be that it is not supported and that you should not do that.

If you need a server virtualization solution Microsoft recommends that you use Hyper-V in Windows Server 2008 R2.  If this is not an option for you (most commonly this is because your computer does not support hardware virtualization) then you can run Virtual Server in a supported fashion by doing so on Windows Server 2008.

But why am I talking about how to do this today?  Well – I needed to do so for the purposes of a demo that I am working on.  I am setting up a demo that I want to run on a single computer, that needs to have some server infrastructure running in the background.  Ordinarily I would just setup the servers inside Virtual PC – but in this case the demo is centered around Virtual PC – and I do not want to have a bunch of server virtual machines cluttering up my demo (petty – I know).

What is the deal with running Virtual Server 2005 R2 SP1 on Windows 7 anyway?  Well – if you just try to download and install Virtual Server on Windows 7 you will be presented with the following dialog:

picture1

The reason why this dialog is presented is because Microsoft has explicitly decided to not support, or test, Virtual Server on Windows 7.  Have I mentioned that this is not supported?  Just to reiterate – this is not supported. As Virtual Server includes kernel mode drivers – the fact that they are untested and unsupported could be potentially catastrophic for your computer.

Because of this the Windows 7 application compatibility engine detects that you are trying to install Virtual Server and stops you.  At this point you have two options (apart from the obvious one of not running Virtual Server on Windows 7):

  1. Try to trick the application compatibility engine into not recognizing Virtual Server
  2. Just turn the application compatibility engine off

The problem with trying to trick the application compatibility engine is that it usually involves renaming files / messing with the registry in ways that may potentially break Virtual Server anyway (thus defeating the point of the whole exercise).  The problem with turning of the application compatibility engine is that you may encounter problems with other applications as a result.

Since I am only running a limited set of applications in my demo environment, I felt more comfortable with the second option.  To turn off the application compatibility engine you need to:

  1. Run GPEdit.msc
  2. This should open the Local Group Policy Editor
  3. In the tree (on the left) select Local Computer Policy then Computer Configuration, Administrative Templates, Windows Components and finally Application Compatibility
  4. Locate the entry for Turn off Application Compatibility Engine and double click on it
  5. Select the Enabled radio button and then click OK
  6. Next locate the entry for Turn off Program Compatibility Assistant and double click on it
  7. Select the Enabled radio button and then click OK

You should now have something that looks like this:

picture3

Now you will need to reboot your computer (forcing a group policy update is not enough in this case). 

Before moving on I would like to quickly discuss exactly what the impact of these policy changes are:

  1. Disabling the Program Compatibility Assistant means that Windows will no longer tell you when you are about to run a program with known compatibility problems.  It will just sit by quietly and let you try (and most likely fail).
  2. Disabling the Application Compatibility Engine means that Windows will no longer try to correct known compatibility issues.  This means that there may be programs that were working before that start failing – because Windows is no longer fixing things up for them.

So the summary is that you should really only do this if you are running a limited set of applications and can confirm that they all can run with the application compatibility engine disabled.

Once the computer has rebooted you should be able to run the Virtual Server installer with no problems:

picture9

Once you have done this you will want to install the Virtual Server 2005 R2 SP1 update.  This package added official support for running Virtual Server on Windows Vista and Windows Server 2008 – and solves a number of compatibility issues that you will encounter on Windows 7 without this update.  Installing the update is a little tricky – as it is shipped as a .MSP file that will fail to install if you just double click on it.  Instead what you need to do is to open an administrative command prompt and run to following command:

msiexec /update KB956124.msp

You should now be ready to go with Virtual Server.  However, there are some potential issues with this configuration:

  1. A number of people have contacted me with reports that SCSI disks do not work with Virtual Server when running on top of Windows 7.  I have not seen this problem myself (SCSI disks are working fine for me) so I do not know what is happening here.
  2. There have been a number of reports that Virtual Server fails to set file permissions correctly on Windows 7.  I have seen this problem myself – but have yet to suffer any ill side effects (apart from an annoying event log entry about it).

Finally – here are the latest links to the Virtual Server bits if you are going to try this out yourself:

Cheers,
Ben

Leave a Comment
  • Please add 6 and 4 and type the answer here:
  • Post
  • Why not install KB956124.msp from http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=886876b7-e17c-4429-85da-f623506c5f2c instead of KB948515.msp?

  • Or, as I have had to do, run Sun's VirtualBox and run the guest VM "Headless".  Sun's free VirtualBox runs Windows 2008R2 (64 bit) just fine with other 32 bit guest machines simultaneously.  Since it is not a Hypervisor but a virtualization layer on top of the OS, OS power management, wireless networking, etc. is supported.

    Microsoft should be ashamed to be forcing loyal customers to move to a competitor's product in order to maintain a supported level of functionality with Windows 7 as the Host OS.

    Thank you for this post, I am looking forward to trying this, but I need a Microsoft supported server virtualization solution within the OS as the current publically issued roadmap (from 3 years ago) describes.

    David

  • Aren't MCTs required to deliver courses on workstations that are running Virtual Server? If so, what's the MS plan once all those Vista boxes get upgraded to 7?

    As someone delivering courses, I've performed the steps above, but it seems quite onerous.

  • Thanks! I was looking hard for this info a while back and never got to the bottom of it. I ended up running my development servers up on Windows Virtual PC under Win7, but it's good to know this info is available if I decide to checkout vs2005r2 again.

  • IL -

    Good catch.  I have updated the article appropriately.

    Cheers,

    Ben

  • @David -- I agree (mostly).  I use HyperV for everything at work (3 boxes = 12 production & 5 testing servers) but when it comes to developing on my laptop, I use VirtualBox since it lets me sleep/hibernate.  I have an XP and a Server 2003 vm running under Windows 7, and I couldn't be happier.  I disagree with the notion that Microsoft _has_ to provide functionality. 3rd party software designed to fill a need is why MS is where it is today. I still consider VirtualBox it's own entity, not Sun's or Oracle's...

  • Hi,

    I did what you mentioned above; Virtual server 2005 is working now on windows, but the problem, when I create a new VM, I couldn’t change the network card settings. It's not change the network settings to internal or anything else.

    Can you help please.

    Thanks

  • Jone -

    Make sure IE is configured properly per: http://blogs.msdn.com/virtual_pc_guy/archive/2010/04/13/using-virtual-server-with-internet-explorer-8.aspx

    Cheers,

    Ben

  • If you support windows vista i bet you can support windows 7.

    If because of this people are moving  to open source then that`s is not good for Microsoft.

    Great article!

    Talley

  • If you support windows vista i bet you can support windows 7.

    If because of this people are moving  to open source then that`s is not good for Microsoft.

    Great article!

    Talley

  • still it is not installing as i followed ur step.any other way

  • Can Virtual Server 2005 SP1 coexist/be installed side by side when Windows Virtual PC is already installed?

  • thanks for that it worked a treat

    i am new to this now it is loaded it is aking me to type the path to the virtual machine

    can you please help

    mick

  • mate, this has been a huge help to me! thanks!

  • Hi,

    So everything was working fine up until the point where I'm supposed to turn on the server...nothing happens.I've tried several times but the server status remains off

Page 1 of 2 (18 items) 12