6

I emula Windows 8 en una máquina virtual utilizando Parallels. Guardo todos mis proyectos de desarrollador en la partición de mi Mac para mayor simplicidad y coherencia.Visual Studio 2012 Network Shares

Cuando intento para construir una aplicación (Visual Studio 2012) que se ejecuta fuera de este recurso compartido de red, me sale el siguiente error de compilación:

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

¿Alguien sabe cómo solucionar este problema? Necesito decirle a Visual Studio 2012 que mi recurso compartido de red es un dispositivo confiable, o al menos engañarlo para que piense que el proyecto está en una unidad local. ¿Hay alguna forma de crear enlaces simbólicos en Windows?

En Visual Studio 2010, he resuelto este problema como se indica en este sitio web: http://www.sehajpal.com/index.php/2010/10/how-to-solve-loadfromremotesources-error-in-vs-2010/

Gracias por la ayuda!

+0

¿Lo mismo no funciona para VS 2012? – spender

+1

Su kilometraje variará según el tipo de aplicación que esté desarrollando. En mi caso, estaba desarrollando una aplicación de metro de Windows 8. Al compilar la aplicación, Windows firma la aplicación, lo que permite que esté instalada implícitamente. Debido a problemas de seguridad, esto no funciona si está ejecutando un recurso compartido de red. Verifique el enlace que publiqué a continuación si tiene alguna inquietud. La solución rápida es decirle a Windows que está ejecutando la aplicación. remotamente. – Alex

+0

Respuesta simple en http://stackoverflow.com/questions/12126918/registration-of-app-failed-because-the-files-are-on-a-network-share-copy-the-fi. Confirmado para trabajar en VS2017. –

Respuesta

14

This post by Gearard Boland resuelve este problema. Espero que esto es muy útil para cualquier otra persona durante el desarrollo de una red compartida:

Yes, it's by design that you cannot run a Metro app from a network drive and deployment from Visual Studio essentially registers the app with the system without actually packaging and installing it (so it doesn't get put into the normal install location, which is local).

You can still work with sources on a network drive, but you'll have to override the deployment location, which by default is under the project's root directory (e.g. bin\). You have several options:

  1. You can switch from local debugging to remote debugging and set the machine name as 'localhost'. This will do a remote deployment on your local machine (thus not using the project's directory). You don't need to install the Remote Debugger tools, nor start msvsmon for this to work on localhost.
  2. You can override the project's output directory. Right-click on the project and change the output directory to something like: $(Temp)\$(MSBuildProjectName)\bin\$(Configuration) , where Temp is an environment variable pointing to your Temp directory.
  3. If you still want normal output to live next to the sources, e.g. when you build the appx package, etc., you can override only the layout directory instead of the entire output path. For this you'll need to modify your project file directly (e.g. *.jsproj, *.csproj, ...) to add the new value:

    <PropertyGroup> 
        <LayoutDir>C:\WorkingFolder\$(MSBuildProjectName)\$(Configuration)</LayoutDir> 
    </PropertyGroup> 
    

Hope that helps.

Cuestiones relacionadas