How to run the Microsoft Windows XP VHD, for testing with IE 6.0, with a valid/un-expired date?

The Light picture The Light · Aug 15, 2011 · Viewed 14.1k times · Source

I just downloaded the VHD for windows xp: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11575

But when I start the virtual pc it says that "the evaluation period for this copy of windows has ended..."

I read that for the Windows XP image:

"Expires: This image will shutdown and become completely unusable on August 09, 2011."

Why is it expired? where could I download a working version?

Thanks

Answer

acatalept picture acatalept · Apr 4, 2012

Note 1: I'm running the XP IE6 VHD which expires today, 4/4/12 (this VHD can also be upgraded to IE7 and IE8 - I use all three in three separate VMs) under the Windows 7 version of Virtual PC - your mileage may vary.

Note 2: As of today (the expiration date of the VHD), this VHD tells me it's expired upon login, and won't even get me to the desktop. If I simply reset the date and disable time syncing as follows, there is still an "expired" flag set somewhere in the VHD's Windows install and it's still unusable. You must either:

  • discard your undo disk to a point prior to the expiration (if you already had Undo Disks enabled, which I always recommend when creating a VM for testing to "lock down" your setup once you have it the way you like),

    or

  • reinstall a fresh VHD dated prior to the expiration date, then make the following changes to the .VMC file before booting the VHD for the first time.

How I got my working XP IE VHD back:

  1. You need to change the date in the .VMC file per step 1B in the link @William mentioned. This value may not exist in a new, unbooted .VMC file - it should go under preferences/hardware/bios like this example for Dec 31, 2011 @ 12:00am:

    <preferences>
      <hardware>
        <bios>
          <time_bytes type="bytes">00000000000000311211</time_bytes>
    

    If you do not set this to some valid date before booting the VHD for the first time (in which case this value won't exist yet), it will force a time sync (even if you disable time syncing as in step 2 below), which may completely foil your efforts.

  2. But you also need to disable time syncing in the .VMC file per the information in this TechNet thread (scroll down to karonwu's 2nd post, 7/16/09 7:41am).

    Disable time syncing at boot (this value didn't exist by default in my .VMC file):

    <preferences>
      <hardware>
        <bios>
          <time_sync_at_boot type="boolean">false</time_sync_at_boot>
    

    Disable repeated time syncing while VHD is running (this value was already present and set to "true"):

    <preferences>
      <integration>
        <microsoft>
          <host_time_sync>
            <enabled type="boolean">false</enabled>
    

You may want to go into Control Panel -> Date and Time -> Internet Time, and uncheck "Automatically synchronize". Although this didn't seem necessary in my case - I forgot on one of my VMs and it said it synchronized successfully, yet the date and time remained as I had set them in the .VMC file.

As recommended by @Leonid below, you should also disable Automatic Updates to prevent an older version of Internet Explorer (such as 6 or 7) from upgrading itself (note that IE8 is the last version supported by XP).

Good luck!