Visual Studio 2013 Windows Phone模拟器未能部署

7
我正在使用VS 2013 express并且有一个简单的Windows Phone 8应用程序。当我使用任何模拟器开始调试应用程序时,它无法将XAP部署到模拟器中。10分钟后会出现一个错误消息:“存在部署错误。是否继续?”。
以下是调试应用程序时的输出:
“添加WMAppManifest.xml 1> Xap打包成功完成 部署开始:项目:MyProject,配置:Debug Any CPU 正在部署C:\Source\WidowsPhone8\MyProject.App\Bin\Debug\MyProject_Debug_AnyCPU.xap……” “连接到模拟器8.1 WVGA 4英寸512MB……”
模拟器启动,但停留在“Windows OS is Starting..”(Windows操作系统正在启动)。
重要提示:如果我打开HyperV管理器并手动启动模拟器,则可以完美地工作,没有问题。问题出现在我尝试从Visual Studio启动它时。
我正在使用Symantec Endpoint保护作为我的防病毒软件。但我无法删除它,因为它受密码保护。这可能是防病毒软件阻止“部署步骤”的原因吗?
5个回答

3
如果您有Symantec Endpoint防病毒软件,请按以下步骤操作:
  1. 打开SEP
  2. 在“状态”->“网络威胁保护”中,从选项中选择“配置防火墙规则”。
  3. 点击“添加”按钮
  4. 在“端口和协议”选项卡中,选择“UDP”协议
  5. 在“应用程序”选项卡中,浏览到 c:\program files (x86)\microsoft xde\8.1\xde.exe 以允许模拟器
  6. 点击“确定”

您需要重复第3 - 6步两次。 添加Visual Studio c:\program files (x86)\microsoft visual studio [xxx]\common7\ide\devenv.exe 添加主机进程c:\windows\system32\svchost.exe

  1. 点击“确定”按钮关闭防火墙规则。
  2. 运行项目。如果模拟器仍然无法启动,请重新启动电脑以确保规则被应用。

这使得模拟器可以连接到互联网。我猜测模拟器无法启动是因为它试图连接到互联网但失败了。在“控制面板\网络和 Internet\网络连接”中,您会看到“vEthernet(内部以太网 Windows Phone 模拟器内部开关)”,双击它,您需要看到“已接收的流量”。然后模拟器将正常工作。当然,如果我们假设您的系统没有其他问题,那么这就是我的解决方案。


https://social.msdn.microsoft.com/Forums/windowsapps/en-US/d12d3d34-0a6c-4e17-9b5b-4c2f89f94d22/firewall-rule-to-allow-connection-to-windows-phone-emulator?forum=wptools&prof=required 告诉你可能还需要启用Eth 0x800流量。除了提到的规则之外,在SEP中创建该规则,就可以完美解决问题。 - mico

2

打开 Hyper-V 管理器并删除所有仿真器虚拟机。在您的情况下,删除仿真器 8.1 WVGA 4 英寸 512MB。然后也删除所有已创建的虚拟交换机。然后重新启动系统。

运行 Visual Studio 并从中运行模拟器。看看这是否有效。如果不行,请尝试卸载并重新安装 VS 2013。


尝试删除虚拟交换机和仿真器。然后重新启动VS。没有用。我想我要卸载VS 2013并重新安装它 :/ - Herno
遇到了同样的问题(虽然可能是Windows 10技术预览的问题)。卸载并重新安装Visual Studio 2013解决了这个问题。 - dumbledad
终于成功了,虚拟开关是问题所在!删除它解决了问题。 - bnu

1

前往 防火墙 并点击:

  1. 允许应用程序或功能通过 Windows 防火墙
  2. 点击更改设置
  3. 取消选中 Hyper-vHyper-V 管理客户端

然后运行模拟器。


哇,这个答案终于帮到我了!谢谢! - tipa

1
一些客户端防火墙可能会干扰Visual Studio正确启动模拟器的能力。请参见 Windows Phone 模拟器无法连接到 Windows Phone 操作系统,其中各种用户禁用了其防火墙以解决类似问题,以及 http://social.msdn.microsoft.com/Forums/en-US/d12d3d34-0a6c-4e17-9b5b-4c2f89f94d22/firewall-rule-to-allow-connection-to-windows-phone-emulator?forum=wptools,Chetan Savade 和 Curtis Trobaugh建议添加Symantec Endpoint Protection规则以打开UDP流量。如果您可以让管理员在开发框上打开正确的UDP端口,则此问题可能会消失。

0
我卸载了SEP(Symantec Endpoint Protection),模拟器开始正常工作了。看起来是SEP的防火墙设置阻止了Visual Studio与Hyper-V虚拟机之间的通信。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接