PrlSF Permissions Issue when Developing an UWP App in Visual Studio

Discussion in 'Windows Virtual Machine' started by JakubZ, Oct 22, 2017.

  1. JakubZ

    JakubZ Bit poster

    I am currently developing some applications in Visual Studio within Parallels and my overall experience is very smooth. I really like the ability of having macOS filesystem being almost transparently available to Win 10 as remote disks using PrlSF.

    However, I have just a single problem: if I try to build an UWP application inside a folder on macOS, Visual Studio will complain about not having all the necessary permissions to complete the build and deploy the application.

    The error I get is:
    DEP0700: Registration of the app failed. [0x80073CF0] error 0x80070003: Opening file from location: AppxManifest.xml failed with error: The system cannot find the path specified..

    After googling the error it appears I need to give SYSTEM permissions to access the folder, but I am not sure how to do that, when the disk is mounted as PrlSF.
  2. vasilyz

    vasilyz Parallels Developers

    Windows limits network drive letters visibility across users/sessions, and this might be the cause. Could you try accessing the shared folder where your project resides using a NTFS symlink rather than the drive letter that is assigned to it? To create the symlink open a command prompt as administrator and run the command:
    mklink /D C:\Path\to\place\YourShareLink \\Mac\YourShare
    (Type 'Home' for 'YouShare' if you are using the home folder)
    Then open the shared folder using the link and open the project from there. Looking forward for your reply.
  3. JakubZ

    JakubZ Bit poster

    I tried creating the symlink, however VS2017 fully resolves links when dealing with project paths.

    I am not sure what has changed since the last time I tried it, but it seems that VS team improved the error message and I received a more informative error message that it was not possible to register the app on from the path on file system PrlSF. After some further research, I found that it is impossible to register a Windows UWP app from a path that is on a network/remote drive.

    I was able to to resolve the issue by setting Build Output Path to a path within the C: in the Parallels VM.

    For further reference, the steps to resolve this issue are as follows:
    1. Unload the UWP project (R-click on project and then select "Unload Project"
    2. Edit the project file in VS (R-click on unloaded project and then select "Edit ...")
    3. Find an XML entry for the OutputPath. For instance the entry for OutputPath when building for Debug|x86 should look like <OutputPath>bin/x86/Debug</OutputPath>. Notice that the entry contains relative path.
    4. Edit the path to an absolute path on one of VMs drives. For instance, to set the path to the %TEMP%\UWPBuilds\x86\Debug directory for the user write <OutputPath>$(TEMP)\Debug</OutputPath>
    5. Close the project file
    6. Reload the project (R-click on unloaded project and then select "Reload Project").
    vasilyz likes this.
  4. vasilyz

    vasilyz Parallels Developers

    Thank you for your research. Then it seems it's the only possible solution to the problem currently.
  5. LunL

    LunL Bit poster

    Hi, for me mklink /D no longer work after 15.1. The symlink is created successfully but is not accessible. The error message is something like "system doesn't recognize file names". Can you guys fix that regression?

Share This Page