Windows 7使用系统驱动器的VHD克隆引导到VHD


8

这似乎不是一个太困难的问题,并且经过几个障碍,我正在疯狂地接近。但是我不能完全到达那里。

我正在开发商店中运行Windows 7。我想开始使用VS2010处理一些暂时不会发布的东西。我的老板说生产机器上没有beta代码,但如果可以在虚拟PC等隔离环境中运行VS2010,则可以为该项目运行VS2010。

好吧,我以前在VPC上使用过Win7的beta和RC,由于VPC环境,它的运行速度非常慢。但是每个人都对Windows 7的引导到VHD功能赞不绝口,该功能仅将磁盘虚拟化,而您实际上是在硬件上运行。可能要慢一些,但远不及VPC的速度损失。

我花了很多时间按照我想要的方式安装所有东西。所以我想,我将使用Disk2VHD克隆系统驱动器,并从中启动,然后将VS2010安装到该驱动器上。(我将大多数用户数据(包括我的所有项目)保存在单独的分区中,因此不必重复并且仍然可以使用。)

好吧,我遇到了一些困难,主要是因为我使用的是旧版本的Disk2VHD-(如果要尝试,请获取最新版本。)但最终我还是让它启动了。(Scott Hanselman在启动VHD时有一篇不错的博客文章)。

但这不完全是我的期望或期望。我所期望的是,VHD将成为C:驱动器,而原始(物理)C:驱动器将被隐藏或安装在不同的字母下,从而被隔离并不受任何更改的影响。

您真正得到的是VHD变成了D:驱动器,然后从D:驱动器启动,但是原始的C:驱动器仍然存在。除了VHD上的注册表是C:驱动器上注册表的克隆,并且包括许多对C:的硬编码引用之外,这还可以。因此结果是有些东西来自(和修改)D:(VHD),但是有些东西来自(和修改)C:。(如果打开cmd提示符并执行SET以查看环境变量,则将看到D:\和C:\路径的混合。)因此,我实际上并没有隔离的环境。最重要的是,%ProgramFiles%仍设置为C:\ Program Files。

我真正需要的是一个工具,该工具可以访问已安装的VHD AS FILES上的注册表文件(而不是注册表项),并且可以进行全局搜索并将所有C:\替换为D:。我还没有找到这样的程序。(我尝试使用称为注册表替换的程序来执行此操作,但是,即使以管理员身份运行,某些条目注册表也不允许您更改。)

有人知道吗?或任何其他解决我的问题的方法(除了使用干净的VHD从头开始并在其上安装Win7和所有程序之外)?

Answers:


5

免责声明:我尚未从VHD或此修复程序进行任何引导

请参阅此知识库文章。确保将实际的系统驱动器更改为其他内容。您可能还希望取消分配该驱​​动器号,以进行进一步隔离。


谢谢。那篇文章(关于更改HKLM \ MountedDevices子项的名称)达到了目的。我使用注册表替换器加载了VHD的系统注册表,在此进行了更改,然后当我启动到VHD时,这就是我想要的新C:驱动器。
daveh551

很高兴能奏效,很高兴知道以供将来参考。
09年

0

为我工作。我想如果我们在捕获VHD之前先清理注册表项,则可能不需要更改HKLM \ MountedDevices子项。尚未测试;)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.