【问题标题】:Issue with using StorageFolder in a Unity UWP App deployed on a Hololens在 Hololens 上部署的 Unity UWP 应用中使用 StorageFolder 的问题
【发布时间】:2020-10-05 22:18:49
【问题描述】:

我正在尝试从 Hololens 上的 Unity、UWP 应用程序访问 SMB 共享驱动器,并尝试按照以下链接中的方法进行操作:

How to access local network (SMB) in UWP?

我已经在 Package.appxmanifest 中定义了所需的(功能、共享目标和文件类型关联),您可以在以下屏幕截图中看到:

在我的 Unity 脚本中,我定义了以下内容:

如果 ENABLE_WINMD_SUPPORT && !UNITY_EDITOR

StorageFolder folder = await StorageFolder.GetFolderFromPathAsync(@"\\DESKTOP2GEQQ3D\FolderModels");

“等待”永远不会返回,我收到以下错误:

“FileNotFoundException:找不到指定的文件。”。

任何想法为什么等待永远不会返回并且永远卡住?当然,如果 StorageFolder 无法访问“FolderModels”,我会收到“UnauthorizedAccessException”错误。

我的 SMB 共享驱动器对所有其他网络可见,我的 Hololens 与 SMB 共享驱动器在同一个网络上...我的想法已经用完了...

【问题讨论】:

  • 根据您的描述,所有其他网络都可以看到 SMB 共享文件夹“\\DESKTOP2GEQQ3D\FolderModels”。您是否验证过相同的代码在纯 UWP 项目中是否运行良好?你在哪里进行测试?在真实设备或模拟器上?对于故障排除,您能否提供 Unity 版本和 HoloLens 设备信息?尤其是使用 Unity 2018.4.x LTS 进行 HL v1 开发。

标签: unity3d uwp hololens smb storagefolder


【解决方案1】:

您引用的解决方案并不完全正确。我建议您在 MSDN 论坛中查看答案:LINK

修复要点如下:

  1. 我们已经描述了访问网络驱动器所需的正确功能here

    请仔细检查通用命名约定 (UNC) 文件夹 部分。 在我们的例子中,Proximity 能力是无关紧要的。

  2. 共享目标声明不是我们需要设置的正确声明。相反,请添加File Type Associations声明,查看官方指导:Handle file activation

例如,如果我们需要访问 SMB 文件夹中的 .jpg 和 .txt 文件,添加功能:

<Capability Name="internetClient" />
<Capability Name="privateNetworkClientServer"/>
<uap:Capability Name="enterpriseAuthentication"/>
<Capability Name="internetClientServer"/>

并设置File Type Associations声明:

<uap:Extension Category="windows.fileTypeAssociation">
          <uap:FileTypeAssociation Name="smbfolder">
            <uap:SupportedFileTypes>
              <uap:FileType>.txt</uap:FileType>
              <uap:FileType>.jpg</uap:FileType>
            </uap:SupportedFileTypes>
            <uap:DisplayName>SMBFolder</uap:DisplayName>
          </uap:FileTypeAssociation>
        </uap:Extension>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-15
    相关资源
    最近更新 更多