无法启动Windows Phone模拟器

时间:2013-10-09 11:42:49

标签: c# .net unit-testing windows-phone-8 windows-phone-8-emulator

我正在尝试在CI服务器上运行单元测试。当我运行以下命令时,它尝试启动模拟器,但失败并显示以下消息

vstest.console.exe myxapfile.xap

错误消息

The Windows Phone Emulator wasn't able to ensure the virtual machine was running:

Something happened while starting a virtual machine: 'Emulator WVGA 512MB.ttmaltiparmak' failed to start. (Virtual machine ID 1350ADCE-CC35-4615-BFD5-250179F789EE)

The Virtual Machine Management Service failed to start the virtual machine 'Emulator WVGA
512MB.ttmaltiparmak' because one of the Hyper-V components is not running (Virtual machine ID
1350ADCE-CC35-4615-BFD5-250179F789EE).

我的系统似乎支持以下要求(但它是虚拟机是一个问题吗?)

  • 64位Windows 8
  • SLAT支持
  • 4 GB ram
  • Hyper-V已开启

进一步的试验和结果:

我尝试通过添加删除程序删除并重新添加hyper-v,现在 Hyper-V平台选项已禁用,我无法激活它:S Gilson Banin说hyper-v安装在虚拟机上是不可能的,正如我之前提到的,我们的服务器是虚拟机是不对的,我不能在虚拟机上使用hyper-v?

http://blogs.technet.com/b/gbanin/archive/2013/06/26/how-to-install-hyper-v-on-a-virtual-machine-in-hyper-v.aspx

enter image description here

MSDN上给出的答案http://social.msdn.microsoft.com/Forums/wpapps/en-US/083c8964-071f-469a-8740-2412a69092fc/unable-to-launch-windows-phone-emulator?forum=wptools

11 个答案:

答案 0 :(得分:20)

我遇到了同样的问题。这解决了它。

关闭虚拟机,在虚拟机处理器设置中选择“虚拟化英特尔VT-x / EPT或ARM-V / RVI”选项。

然后将这两行添加到vmx文件的末尾:

hypervisor.cpuid.v0 = "FALSE"
mce.enable = "TRUE"

启动VM,添加Hyper-V组件并重新启动虚拟机。下次启动模拟器时,Visual Studio将配置Hyper-V并运行模拟器

答案 1 :(得分:3)

好的,我已经成功解决了这个问题。但我有我的特殊情况,所以我不知道它是否也可以为你解决。我的方案如下:

  1. 我正在使用iMac 10.9.1 OSX开发Windows Phone 8;
  2. 我正在使用VMWare Fusion 6,通过bootcamp导入Windows 8.1;
  3. 我正在使用Visual Studio 2013 Ultimate,从中运行模拟器;
  4. 我用以启动Windows Phone模拟器的各种方式收到了该错误。
  5. 解决问题:

    1. 您必须使用Hyper-V(VM设置 - >处理器和内存 - >高级选项 - > [在此虚拟机中启用虚拟机管理程序应用程序]必须进行检查),只有在VMWare关闭时才能更改;
    2. 要使用Hyper-V,VMWare必须至少拥有2个处理器。可以在项目1的同一窗口中关闭VMWare进行设置;
    3. 在VM设置中 - >高级 - >首选虚拟化引擎,选择带有EPT的Intel VT-x;
    4. 打开VMWare映像所在的目录,然后使用[option]按钮打开它。单击[显示包内容]并找到.vmx文件。使用文本编辑器打开此文件并放置/修改这些行:
      • hypervisor.cpuid.v0 = "FALSE"
      • mce.enable = "TRUE"
      • vhv.enable = "TRUE"
    5. 我遵循了这些参考:
    6. 我希望它对你有帮助!

答案 2 :(得分:1)

在BIOS中启用对VTx的支持后,您可能需要运行Codeinfo工具来检查系统。

另外,不要忘记在“控制面板 - >程序和功能 - >打开Windows上的功能 - > Hyper-V上启用”Hyper-V管理工具“和”Hyper-V平台“ “:

我在Windows 7机器顶部的VMware播放器中运行Windows 8 64位。从Windows Phone 8运行模拟器时也遇到问题,并按照本指南解决了这些问题:http://developer.nokia.com/Community/Wiki/Windows_Phone_8_SDK_on_a_Virtual_Machine_with_Working_Emulator

希望它有所帮助...

答案 3 :(得分:1)

您尚未正确安装Hyper-V。应安装“Hyper-V平台”以使服务运行。通常情况下,VM默认运行“虚拟机管理程序”,Hyper-V要求此虚拟机管理程序自行运行。

首先通过更改虚拟机的“vmx”(如果是vmware)文件来禁用VM的虚拟机管理程序(在更改之前备份文件!)

  

关闭你的虚拟机

     

找到.vmx文件

如果您对vmx文件不了解,请阅读本文 - http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1003880

  

用记事本打开它并添加它   最后一行(或实际上的任何地方)

     

hypervisor.cpuid.v0 =“FALSE”

如果您无法找到vmx文件,请阅读本文 http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1003880

  

现在,您将能够在Windows中安装“Hyper-V平台”   “打开或关闭Windows功能”,这样做。

     

重新开始

尝试部署到WP Now!如果它仍然无效,请评论你得到的错误!

答案 4 :(得分:0)

选择要在Windows 8 Phone开发中使用的仿真器VM (默认为“Emulator WVGA 512MB”)。转到 Hyper-V VM设置,将处理器数量 2更改为1 。按应用而不是确定以应用新设置。

如果在Mac或虚拟机上..

或尝试在此链接中查看其他解决方案:

Running Windows 8 Phone emulator in the Windows 8 virtual machine Problem

我真的希望这个链接链接可以帮助你减少; - )

答案 5 :(得分:0)

只需将您的vhd和其他文件从vhd位置复制到另一个文件夹即可。只需使用您刚刚复制的VHD创建另一个新VM。现在它将开始。

答案 6 :(得分:0)

我遇到过一种情况,我在当前的Visual Studio季度更新之前安装了一个azure组件,导致模拟器死机。

我建议您重新安装/修复当前的Visual Studio更新。重新启动并重试。

答案 7 :(得分:0)

确保选择“Virtualize Intel VT-x / EPT或ARM-V / RVI”选项。这需要能够在您的虚拟机上运行HYPER-V。

答案 8 :(得分:0)

只需打开Hyper-V管理器并删除所有连接。然后再试一次。这个解决方案适用于我的PC。

答案 9 :(得分:0)

将这两行添加到vmx文件的末尾:

hypervisor.cpuid.v0 =“FALSE” mce.enable =“TRUE”

答案 10 :(得分:0)

右键单击计算机 - >点击属性 - >在左侧查找“高级系统属性”并单击它单击“高级”选项卡 - >点击“效果设置”按钮 - >点击“高级”标签 - >在“虚拟内存”部分中点击“更改.. ” - > 未选中自动管理所有驱动器的页面文件大小 - >点击广播自定义尺寸 - >手动设置值 - 最小[4096],最大[8192]