Hyper-V无法在Windows 8 Pro中卸载

我有一台安装了Hyper-V的Windows 8 Pro机器。 现在,开发人员想用Vagrant虚拟化,但是在64位机器出现问题时会出现问题。 这似乎是因为安装了Hyper-V。

当我通过windowsfunction对话框卸载Hyper-V时,系统会提示重启。 在重新启动期间,我简要地看到一条消息,看起来像“致命错误C00000d4”,但机器启动得太快,无法读取任何内容。

不幸的是,我主要是一个Linux系统pipe理员,所以我不知道如何继续。 我search了事件查看器,但唯一可以看到的可能是相关的错误:

Log Name: System Source: Service Control Manager Date: 2013-03-11 4:30:34 PM Event ID: 7023 Task Category: None Level: Error Keywords: Classic User: N/A Computer: Renegade Description: The Windows Modules Installer service terminated with the following error: The system cannot move the file to a different disk drive. Event Xml: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="Service Control Manager" Guid="{555908d1-a6d7-4695-8e1e-26931d2012f4}" EventSourceName="Service Control Manager" /> <EventID Qualifiers="49152">7023</EventID> <Version>0</Version> <Level>2</Level> <Task>0</Task> <Opcode>0</Opcode> <Keywords>0x8080000000000000</Keywords> <TimeCreated SystemTime="2013-03-11T20:30:34.831647800Z" /> <EventRecordID>6314</EventRecordID> <Correlation /> <Execution ProcessID="520" ThreadID="600" /> <Channel>System</Channel> <Computer>Renegade</Computer> <Security /> </System> <EventData> <Data Name="param1">Windows Modules Installer</Data> <Data Name="param2">%%17</Data> <Binary>540072007500730074006500640049006E007300740061006C006C00650072000000</Binary> </EventData> </Event> 

看起来像它可能与Windows程序安装过程中已被移到一个非ssd驱动器上的ProgramData有关,但我不知道是否与Hyper-Vfunction的卸载失败有关。

有人可以在这里指出我正确的方向吗? 要么得到我收到的真正的错误,要么强制Hyper-V卸载或…什么?

我最终解决了这个问题。

转到故障恢复控制台(或者在没有Windows运行的情况下使用某种方式来编辑文件系统)。 将ProgramData文件夹移动到C驱动器上,并在其最初所在的驱动器上创build一个符号链接(这可以防止其他所有事情的发生 )重新启动,然后运行卸载。 它应该成功。 返回到故障恢复控制台并将ProgramData文件夹移回到其中

我最终做的是将ProgramData移回到C盘(使用恢复控制台),将其重新链接到最初的驱动器,运行卸载(成功),然后返回到恢复控制台将其移回。

从那以后,假设在卸载程序中有一个硬编码的C:\ ProgramDatapath(而不是从registry键读取)可能是安全的。