Disabling Time Synchronization under Virtual PC 2007

Disabling Time Synchronization under Virtual PC 2007

  • Comments 12

When you have Virtual Machine Additions installed on Virtual PC we will automatically synchronize the virtual machines time with that of the host operating system.  For most people this is a "good thing" - but if this is something you want to disable you need to:

  1. Stop the virtual machine in question.
  2. Locate the .VMC file for the virtual machine.
  3. Open the .VMC file in notepad.

    You can use a different editor - but notepad is the safest as it is guaranteed to not change our file format to something that is incompatible with Virtual PC (which other editors have been known to do).

  4. Find the section of the .VMC file that looks like this:

    <integration>
        <microsoft>
            <mouse>
                <allow type="boolean">true</allow>
            </mouse>

    Bunch of other stuff that I am skipping over to save space...

        </microsoft>
    </integration>


  5. Change it to look like this:

    <integration>
        <microsoft>
            <mouse>
                <allow type="boolean">true</allow>
            </mouse>
            <components>
                <host_time_sync>
                    <enabled type="boolean">false</enabled>
                </host_time_sync>
            </components>

    Bunch of other stuff that I am skipping over to save space...

        </microsoft>
    </integration>

  6. Close notepad and save the .VMC file.
  7. Start the virtual machine under Virtual PC.

Note that this will not only disable the time synchronization that happens while the virtual machine is running - it will also disable the time synchronization that occurs when you start the virtual machine.  This means that unless you are using some other method for time synchronization (network server, etc...) time inside the guest operating system will become very incorrect very quickly.

Cheers,
Ben

Leave a Comment
  • Please add 8 and 2 and type the answer here:
  • Post
  • "notepad is the safest as it is guaranteed to not change our file format to something that is incompatible with Virtual PC"

    Interesting pick for safety of editors.  I believe you that it's true for your particular app (Virtual PC) but in many cases notepad is unsafe because it destroys file formats.

    Example 1:  Plain text, every line ending with a CR-LF pair, no bare CR, no bare LF, no undisplayable characters or anything like that.  When you hit Ctrl-S to save the contents, the cursor moves.  The next character that you type gets inserted into a different place than you thought it was going to.  Depending on which patches your Windows XP system has, Notepad's display might show what you intended to type while its contents in memory (and what gets saved to a file) show where it really did the insertion.  With all latest patches at least it shows you how it's corrupting the file.

    Example 2:  Plain text but with some lines ending in CR-CR-LF triples.  This isn't exactly Notepad's fault since I don't think Notepad creates files that way.  But Notepad still misleads the user.  It displays the file with line breaks where they were, but in memory (and what gets saved to a file) all the line breaks go away and the text gets joined into one enormous line.

    Sure, as long as Virtual PC developers are careful in formatting the .vmc files and test regularly, Notepad is safe with them.

  • Great, this was something I wanted to do some time back. Thanks Ben.

    Coming back to this, is there some way we could synchronize time, but add in a timezone bias?

    I would like my VPC to run on UK time, to simulate a PC at a client location. Or is the only solution here to have an external time synchronization?

    Also, is there someplace where all of these VMC file settings are documented?

    I usually edit my VMC files, but that holds good only when there is an entry I need to modify.

  • I think you could set up NTP with the physical host as NTP server and guests as NTP clients.  Then they'd handle the time zone difference.  Maybe that's exactly the reason for this blog posting.

  • How can I *enable* time sync between a DOS6.22 VM and the host system?  As far as I can tell, the time displayed in a legacy, DOS-based comms program that runs on the DOS VM isn't sync'ed to the host's time, and it seems to progressively drift away from host time.  This means that the timestamps generated on events by the comms program are increasingly inaccurate.  Is there any way to get the DOS VM to time-sync to the host?

  • I already could continue working with my virtual machine. Thanks in advace.

  • I think you could set up NTP with the physical host as NTP server and guests as NTP clients.  Then they'd handle the time zone difference.  Maybe that's exactly the reason for this blog posting.

    www.stellentcomponents.in

  • Does this also apply for Win7's Virtual PC?

    I have 2 vms running Windows Server 2008, disabled time sync as explained above. But when I change the time in my VM1 (a DC, with the time service disabled and stopped) it still changes back to my host time after a couple of seconds. The DC is NOT connected to the internet.

  • Great to learn this tip. I have managed to setup my test environment for a cross year project following this instruction. Thanks.

  • not working, it keeps syncronzing a few second after changing the datetime

  • just can stop the time from sync-ing

  • In win7 virtual pc time progressively drift away from host time by 15 sec per 1 minute

  • Win7 virtual pc vmc file have in host_time_sync fields "frequency"(15) and "threshold"(10). It means then every 15 sec check if the difference more then 10 sec then sync time. As I said time drifts very quickly (15 sec per min, checked on pc and notebook). You will have the difference anyway up to 10 sec. I can set 1-1 for this fields. But I think it is not correct. How to make guest xp work the right time?

Page 1 of 1 (12 items)