我使用Parallels在VM上模拟Windows 8。我将所有开发人员项目存储在Mac的分区上,以简化和连贯。
当我尝试构建运行此网络共享的应用程序(Visual Studio 2012)时,出现以下编译时错误:
Error 1 Error : DEP0700 : Registration of the app failed. Rejecting a request to register from file:///Z:/Users/MY_USER_NAME/Sites/App1/App1/bin/Debug/AppX/AppxManifest.xml because the files are on a network share. Copy the files to the local computer before registering the package. (0x80073cf9) App1
有谁知道如何解决这个问题?我需要告诉Visual Studio 2012我的网络共享是一个受信任的设备,或者至少让它认为项目是在本地驱动器中。无论如何在Windows中创建符号链接?
在Visual Studio 2010中,我解决了此问题,如本网站所述:http://www.sehajpal.com/index.php/2010/10/how-to-solve-loadfromremotesources-error-in-vs-2010/
感谢您的帮助!
答案 0 :(得分:14)
This post by Gearard Boland解决了这个问题。希望这对于通过网络共享开发的其他人来说非常方便:
是的,根据设计,您无法从网络驱动器运行Metro应用程序,而Visual Studio的部署实际上是在系统中注册应用程序而不实际打包和安装它(因此它不会被放入正常的安装位置,这是当地的。
您仍然可以使用网络驱动器上的源,但您必须覆盖部署位置,默认情况下位于项目的根目录下(例如
bin\
)。您有几种选择:
- 您可以从本地调试切换到远程调试,并将机器名称设置为“localhost”。这将在您的本地计算机上进行远程部署(因此不使用项目的目录)。您无需安装远程调试器工具,也无需启动
msvsmon
即可在localhost上工作。- 您可以覆盖项目的输出目录。右键单击项目并将输出目录更改为:
$(Temp)\$(MSBuildProjectName)\bin\$(Configuration)
,其中Temp
是指向Temp目录的环境变量。- 醇>
如果您仍希望在源旁边存储正常输出,例如在构建appx包等时,只能覆盖布局目录而不是整个输出路径。为此,您需要直接修改项目文件(例如* .jsproj,* .csproj,...)以添加新值:
<PropertyGroup> <LayoutDir>C:\WorkingFolder\$(MSBuildProjectName)\$(Configuration)</LayoutDir> </PropertyGroup>
希望有所帮助。