两台 Windows 7 计算机上有相同的 Windows XP 模式 VHD

两台 Windows 7 计算机上有相同的 Windows XP 模式 VHD

我有两台经常用于工作的机器。一台是 Windows 7 Pro 64 位,另一台是 Windows 7 Pro 32 位。我工作所需的一两款软件需要在 Windows XP 模式下运行(其中一款无法在 Windows 7 下安装),因此我在 64 位机器上创建了一个 Windows XP Mode 实例,并根据需要进行了设置。然后,我将差异 VHD 移至 32 位机器,并将其指向父 VHD,但无法正常工作。

是否可以在两台独立的机器上使用差异 VHD?

或者我是否需要将我的 VHD 与父 VHD 合并才能在两台机器上运行它?

答案1

本文包含一个有关如何使 Windows XP Mode VHD 更具可移植性的解决方案:
将 VHD 从 Windows Virtual PC(Windows XP 模式)传输/移动到另一台计算机

解决方案是:

  1. 彻底关闭虚拟机
  2. 在虚拟机设置中,单击硬盘 1,然后单击修改。
  3. 在对话框中,单击“合并”。这会将两个不同的硬盘合并为一个,这样我们就可以将其移动到另一台机器上。您可以选择就地执行此操作,也可以创建一个新文件,后者更可取。

我建议仔细阅读这篇文章和评论。

答案2

我最近才这样做,父 VHD 有一个子 VHD 检查的内部 GUID,这就是它失败的原因。如果您将父 VHD 复制到另一台计算机并覆盖它(您需要取得该文件的所有权,因为默认情况下只有用户 SYSTEM 才有权写入该 VHD),它将正常工作。32 位和 64 位无关紧要,因为这就是我所做的(从 64 位开始复制到 32 位,没有问题)

我遇到的一个问题是,当您切换计算机时,休眠状态确实会崩溃,但虚拟机内的操作系统只是将其视为断电,只要您没有运行任何程序,它就会没事。

更新:如果您在安装时使用本地计算机的网络共享而不是 C:\ 版本,则可以通过网络访问 VM,从而获得加分,以下是我的 VMC 文件的片段

        <ide_adapter>
            <ide_controller id="0">
                <location id="0">
                    <drive_type type="integer">1</drive_type>
                    <pathname>
                        <absolute type="string">\\schamberlain\vm\Windows XP Mode 1.vhd</absolute>
                        <relative type="string">.\Windows XP Mode 1.vhd</relative>
                    </pathname>
                    <undo_pathname>
                        <absolute type="string">\\schamberlain\vm\VirtualPCUndo_Windows XP Mode 1_0_0_18514606212011.vud</absolute>
                        <relative type="string">.\VirtualPCUndo_Windows XP Mode 1_0_0_18514606212011.vud</relative>
                    </undo_pathname>
                </location>
            </ide_controller>
            <ide_controller id="1">
                <location id="0">
                    <drive_type type="integer">2</drive_type>
                    <pathname>
                        <absolute type="string">F</absolute>
                        <relative type="string" />
                    </pathname>
                </location>
            </ide_controller>
        </ide_adapter>

当我安装它时我将其用作\\schamberlain\vm我的 VM 目录。

相关内容